From f4643972bd4c17a235559069fbfe75c4a7f47fea Mon Sep 17 00:00:00 2001
From: Russ Cox
Both GOARCH=ppc64
and GOARCH=ppc64le
now
- require at least Power8 support. In previous releases,
- only GOARCH=ppc64le
required Power8 and the big
+ require at least POWER8 support. In previous releases,
+ only GOARCH=ppc64le
required POWER8 and the big
endian ppc64
architecture supported older
hardware.
@@ -143,7 +143,7 @@ type T1 = T2
The Go compiler now supports compiling a package's functions in parallel, taking
advantage of multiple cores. This is in addition to the go
command's
existing support for parallel compilation of separate packages.
- Parallel compilation is on by default, but can be disabled by setting the
+ Parallel compilation is on by default, but it can be disabled by setting the
environment variable GO19CONCURRENTCOMPILATION
to 0
.
- The ARM MULA
instruction is now assembled correctly
+ The four-operand ARM MULA
instruction is now assembled correctly,
with the addend register as the third argument and the result
register as the fourth and final argument.
- In previous releases, the meanings of the two arguments were
- reversed. Code using MULA
will need to be updated.
+ In previous releases, the two meanings were reversed.
+ The three-operand form, in which the fourth argument is implicitly
+ the same as the third, is unaffected.
+ Code using four-operand MULA
instructions
+ will need to be updated, but we believe this form is very rarely used.
MULAWT
and MULAWB
were already
- using the correct order and are unchanged.
+ using the correct order in all forms and are unchanged.
@@ -205,8 +208,8 @@ type T1 = T2
- Viewing documentation on struct fields is now supported with
- go doc struct.field
.
+ Viewing documentation on struct fields is now supported.
+ For example, go
doc
http.Client.Jar
.
Go 1.9 includes a new package,
math/bits
, with optimized
- implementations for manipulating bits. On most architectures
+ implementations for manipulating bits. On most architectures,
functions in this package are additionally recognized by the
compiler and treated as intrinsics for additional performance.
Map
type
in the sync
package
is a concurrent map with amortized-constant-time loads, stores, and
- deletes. It is safe for multiple goroutines to call a Map's methods
+ deletes. It is safe for multiple goroutines to call a Map
's methods
concurrently.
@@ -454,7 +457,7 @@ version of gccgo.
certificate files directory, respectively.
- The FreeBSD path /usr/local/etc/ssl/cert.pem
is
+
The FreeBSD file /usr/local/etc/ssl/cert.pem
is
now included in the certificate search path.
The package now reports an error if a predefined escaper (one of - "html", "urlquery" and "js") is found in a pipeline and its - rewriting by the contextual auto-escaper could potentially lead - to security or correctness issues. + "html", "urlquery" and "js") is found in a pipeline and does not match + what the auto-escaper would have decided on its own. + This avoids certain security or correctness issues. + Now use of one of these escapers is always either a no-op or an error. + (The no-op case eases migration from text/template.)
@@ -765,8 +770,8 @@ version of gccgo. Theos
package now uses the internal runtime poller
for file I/O.
This reduces the number of threads required for read/write
- operations on pipes, and eliminates races when one goroutine
- closes a file while another using it for I/O.
+ operations on pipes, and it eliminates races when one goroutine
+ closes a file while another is using the file for I/O.
In previous releases, using a nil
Config.Rand
- value caused the same deterministic random number generator to be used.
- It now uses a random number generator seeded on the current time.
- For the old behavior, use rand.New(rand.NewSource(0))
.
+ value caused a fixed deterministic random number generator to be used.
+ It now uses a random number generator seeded with the current time.
+ For the old behavior, set Config.Rand
to rand.New(rand.NewSource(0))
.