From: Austin Clements
+ Setting the GODEBUG
environment variable
+ to
inittrace=1
now causes the runtime to emit a single
+ line to standard error for each package init
,
+ summarizing its execution time and memory allocation. This trace can
+ be used to find bottlenecks or regressions in Go startup
+ performance.
+ The GODEBUG
<
+ documentation describes the format.
+
On Linux, the runtime now defaults to releasing memory to the
operating system promptly (using MADV_DONTNEED
), rather
@@ -298,10 +309,19 @@ Do not send CLs removing the interior tags from such phrases.
variable.
+ The race detector's model for channel operations now more precisely + follows the Go memory model. As a result, it + may report now races that it previously missed. +
+- TODO +
+ The compiler can now inline functions with
+ non-labeled for
loops, method values, and type
+ switches. The inliner can also detect more indirect calls where
+ inlining is possible.
- TODO: https://golang.org/cl/37222: make stack traces of endless recursion print only top and bottom 50 -
- -- TODO: https://golang.org/cl/242258: add 24 byte allocation size class -
- -- TODO: https://golang.org/cl/254659: implement GODEBUG=inittrace=1 support -
-@@ -804,12 +808,22 @@ Do not send CLs removing the interior tags from such phrases.
+ NewCallback
+ and
+ NewCallbackCDecl
+ now correctly support callback functions with multiple
+ sub-uintptr
-sized arguments in a row. This may
+ require changing uses of these functions to eliminate manual
+ padding between small arguments.
+
- SysProcAttr
on Windows has a new NoInheritHandles field that disables inheriting handles when creating a new process.
+ SysProcAttr
on Windows has a new NoInheritHandles field that disables inheriting handles when creating a new process.
- DLLError
on Windows now has an Unwrap function for unwrapping its underlying error.
+ DLLError
on Windows now has an Unwrap function for unwrapping its underlying error.