===> The following configuration options are available for go118-1.18.10_1:
====> Options available for the single GOAMD64: you have to select exactly one of them
V1=on: Use baseline x86-64 instruction set
V2=off: V1 instructions plus CMPXCHG16B, LAHF, SAHF, POPCNT, SSE*
V3=off: V2 instructions plus AVX*, BMI*, F16C, FMA, LZCNT, MOVBE, OSXSAVE
V4=off: V3 instructions plus AVX512*
===> Use 'make config' to modify these settings
lang: remove 'Created by' lines
A big Thank You to the original contributors of these ports:
* Aaron Dalton <aaron@FreeBSD.org>
* Adam Weinberger <adamw@FreeBSD.org>
* Akinori MUSHA aka knu <knu@idaemons.org>
* Alex Dupre <ale@FreeBSD.org>
* Alexey Dokuchaev <danfe@FreeBSD.org>
* Alonso Cardenas Marquez <acm@FreeBSD.org>
* Andreas Klemm <andreas@klemm.gtn.com>
* Andrew Pantyukhin <infofarmer@FreeBSD.org>
* Andrey Zakhvatov
* Anton Berezin <tobez@FreeBSD.org>
* Anton Berezin <tobez@tobez.org>
(Only the first 15 lines of the commit message are shown above )
lang/go{-devel,118}: Add GOAMD64 knobs
Add amd64 microarchitecture level knobs for the Go compiler. Note that
this will affect only the compiler itself, port users will still need to
set GOAMD64 in the environment to adjust the microarchitecture of the
compiled code [1, 2].
Set default to the baseline level for the maximum backward
compatibility.
GOAMD64=v1 (default): The baseline. Exclusively generates instructions
that all 64-bit x86 processors can execute.
GOAMD64=v2: all v1 instructions, plus CMPXCHG16B, LAHF, SAHF, POPCNT,
SSE3, SSE4.1, SSE4.2, SSSE3.
GOAMD64=v3: all v2 instructions, plus AVX, AVX2, BMI1, BMI2, F16C, FMA,
LZCNT, MOVBE, OSXSAVE.
GOAMD64=v4: all v3 instructions, plus AVX512F, AVX512BW, AVX512CD,
AVX512DQ, AVX512VL.
[1]
https://github.com/golang/go/wiki/MinimumRequirements#microarchitecture-support
[2] https://tip.golang.org/doc/go1.18#amd64
*/*: Introduce versioned Go ports
- Mk/Uses/go.mk: add support for selecting Go port version in USES=go;
- Mk/bsd.default-versions.mk: add GO_DEFAULT;
- convert lang/go-devel to the master and lang/go{117,118} to slave
ports;
- add lang/go meta-port that provides go and gofmt symlinks to the
current default version.
PR: 264336
Reviewed by: ygy jwb yuri mikael drtr0jan@yandex.ru decke mat
Differential Revision: https://reviews.freebsd.org/D35346