Update vendored dependencies (#147)
* Prepare readme for release * Update vendored packages * New version of dns dependency handles rejecting UPDATEs under the hood * Go 1.11 required
This commit is contained in:
+2
-3
@@ -6,10 +6,9 @@ os:
|
||||
- linux
|
||||
- osx
|
||||
go:
|
||||
- 1.5.x
|
||||
- 1.6.x
|
||||
- 1.7.x
|
||||
- 1.8.x
|
||||
- 1.9.x
|
||||
- 1.10.x
|
||||
- master
|
||||
|
||||
script:
|
||||
|
||||
+35
@@ -0,0 +1,35 @@
|
||||
Developer Certificate of Origin
|
||||
Version 1.1
|
||||
|
||||
Copyright (C) 2015- Klaus Post & Contributors.
|
||||
Email: klauspost@gmail.com
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
|
||||
Developer's Certificate of Origin 1.1
|
||||
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
(a) The contribution was created in whole or in part by me and I
|
||||
have the right to submit it under the open source license
|
||||
indicated in the file; or
|
||||
|
||||
(b) The contribution is based upon previous work that, to the best
|
||||
of my knowledge, is covered under an appropriate open source
|
||||
license and I have the right under that license to submit that
|
||||
work with modifications, whether created in whole or in part
|
||||
by me, under the same open source license (unless I am
|
||||
permitted to submit under a different license), as indicated
|
||||
in the file; or
|
||||
|
||||
(c) The contribution was provided directly to me by some other
|
||||
person who certified (a), (b) or (c) and I have not modified
|
||||
it.
|
||||
|
||||
(d) I understand and agree that this project and the contribution
|
||||
are public and that a record of the contribution (including all
|
||||
personal information I submit with it, including my sign-off) is
|
||||
maintained indefinitely and may be redistributed consistent with
|
||||
this project or the open source license(s) involved.
|
||||
+12
-2
@@ -76,6 +76,8 @@ const (
|
||||
RDTSCP // RDTSCP Instruction
|
||||
CX16 // CMPXCHG16B Instruction
|
||||
SGX // Software Guard Extensions
|
||||
IBPB // Indirect Branch Restricted Speculation (IBRS) and Indirect Branch Predictor Barrier (IBPB)
|
||||
STIBP // Single Thread Indirect Branch Predictors
|
||||
|
||||
// Performance indicators
|
||||
SSE2SLOW // SSE2 is supported, but usually not faster
|
||||
@@ -131,6 +133,8 @@ var flagNames = map[Flags]string{
|
||||
RDTSCP: "RDTSCP", // RDTSCP Instruction
|
||||
CX16: "CX16", // CMPXCHG16B Instruction
|
||||
SGX: "SGX", // Software Guard Extensions
|
||||
IBPB: "IBPB", // Indirect Branch Restricted Speculation and Indirect Branch Predictor Barrier
|
||||
STIBP: "STIBP", // Single Thread Indirect Branch Predictors
|
||||
|
||||
// Performance indicators
|
||||
SSE2SLOW: "SSE2SLOW", // SSE2 supported, but usually not faster
|
||||
@@ -450,7 +454,7 @@ func (c CPUInfo) CX16() bool {
|
||||
// TSX is split into HLE (Hardware Lock Elision) and RTM (Restricted Transactional Memory) detection.
|
||||
// So TSX simply checks that.
|
||||
func (c CPUInfo) TSX() bool {
|
||||
return c.Features&(MPX|RTM) == MPX|RTM
|
||||
return c.Features&(HLE|RTM) == HLE|RTM
|
||||
}
|
||||
|
||||
// Atom indicates an Atom processor
|
||||
@@ -854,7 +858,7 @@ func support() Flags {
|
||||
|
||||
// Check AVX2, AVX2 requires OS support, but BMI1/2 don't.
|
||||
if mfi >= 7 {
|
||||
_, ebx, ecx, _ := cpuidex(7, 0)
|
||||
_, ebx, ecx, edx := cpuidex(7, 0)
|
||||
if (rval&AVX) != 0 && (ebx&0x00000020) != 0 {
|
||||
rval |= AVX2
|
||||
}
|
||||
@@ -888,6 +892,12 @@ func support() Flags {
|
||||
if ebx&(1<<29) != 0 {
|
||||
rval |= SHA
|
||||
}
|
||||
if edx&(1<<26) != 0 {
|
||||
rval |= IBPB
|
||||
}
|
||||
if edx&(1<<27) != 0 {
|
||||
rval |= STIBP
|
||||
}
|
||||
|
||||
// Only detect AVX-512 features if XGETBV is supported
|
||||
if c&((1<<26)|(1<<27)) == (1<<26)|(1<<27) {
|
||||
|
||||
+11
-1
@@ -70,6 +70,8 @@ const (
|
||||
rdtscp // RDTSCP Instruction
|
||||
cx16 // CMPXCHG16B Instruction
|
||||
sgx // Software Guard Extensions
|
||||
ibpb // Indirect Branch Restricted Speculation (IBRS) and Indirect Branch Predictor Barrier (IBPB)
|
||||
stibp // Single Thread Indirect Branch Predictors
|
||||
|
||||
// Performance indicators
|
||||
sse2slow // SSE2 is supported, but usually not faster
|
||||
@@ -125,6 +127,8 @@ var flagNames = map[flags]string{
|
||||
rdtscp: "RDTSCP", // RDTSCP Instruction
|
||||
cx16: "CX16", // CMPXCHG16B Instruction
|
||||
sgx: "SGX", // Software Guard Extensions
|
||||
ibpb: "IBPB", // Indirect Branch Restricted Speculation and Indirect Branch Predictor Barrier
|
||||
stibp: "STIBP", // Single Thread Indirect Branch Predictors
|
||||
|
||||
// Performance indicators
|
||||
sse2slow: "SSE2SLOW", // SSE2 supported, but usually not faster
|
||||
@@ -848,7 +852,7 @@ func support() flags {
|
||||
|
||||
// Check AVX2, AVX2 requires OS support, but BMI1/2 don't.
|
||||
if mfi >= 7 {
|
||||
_, ebx, ecx, _ := cpuidex(7, 0)
|
||||
_, ebx, ecx, edx := cpuidex(7, 0)
|
||||
if (rval&avx) != 0 && (ebx&0x00000020) != 0 {
|
||||
rval |= avx2
|
||||
}
|
||||
@@ -882,6 +886,12 @@ func support() flags {
|
||||
if ebx&(1<<29) != 0 {
|
||||
rval |= sha
|
||||
}
|
||||
if edx&(1<<26) != 0 {
|
||||
rval |= ibpb
|
||||
}
|
||||
if edx&(1<<27) != 0 {
|
||||
rval |= stibp
|
||||
}
|
||||
|
||||
// Only detect AVX-512 features if XGETBV is supported
|
||||
if c&((1<<26)|(1<<27)) == (1<<26)|(1<<27) {
|
||||
|
||||
BIN
Binary file not shown.
Reference in New Issue
Block a user