- 27 Sep, 2016 11 commits
-
-
Michael Munday authored
This commit makes the assembler frontend reorder the operands so that they are in the order the backend expects. The index should be first for consistency with the other vector instructions. Before this commit no operand order would have been accepted so this isn't a breaking change. Change-Id: I188d57eeb338d27fa1fa6845de0d6d1521b7a6c3 Reviewed-on: https://go-review.googlesource.com/29855 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Munday authored
These instructions are the same as BLT and BLE except that they also branch if the 'unordered' bit is set in the condition code. They are already used by the SSA backend. This change allows them to be used in hand-written assembly code. Change-Id: Ie9b5985a5e87ea22e8043567a286e09dce16a2db Reviewed-on: https://go-review.googlesource.com/29930 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Munday authored
Use the A{,G}HI instructions where possible (4 bytes instead of 6 bytes for A{,G}FI). Also, use 32-bit operations where appropriate for multiplication. Change-Id: I4041781cda26be52b54e4804a9e71552310762d0 Reviewed-on: https://go-review.googlesource.com/29733 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Munday authored
Use an MVC loop to copy arguments in runtime.call* rather than copying bytes individually. I've added the benchmark CallArgCopy to test the speed of Value.Call for various argument sizes. name old speed new speed delta CallArgCopy/size=128 439MB/s ± 1% 582MB/s ± 1% +32.41% (p=0.000 n=10+10) CallArgCopy/size=256 695MB/s ± 1% 1172MB/s ± 1% +68.67% (p=0.000 n=10+10) CallArgCopy/size=1024 573MB/s ± 8% 4175MB/s ± 2% +628.11% (p=0.000 n=10+10) CallArgCopy/size=4096 1.46GB/s ± 2% 10.19GB/s ± 1% +600.52% (p=0.000 n=10+10) CallArgCopy/size=65536 1.51GB/s ± 0% 12.30GB/s ± 1% +716.30% (p=0.000 n=9+10) Change-Id: I87dae4809330e7964f6cb4a9e40e5b3254dd519d Reviewed-on: https://go-review.googlesource.com/28096 Run-TryBot: Michael Munday <munday@ca.ibm.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bill O'Farrell <billotosyr@gmail.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Alberto Donizetti authored
Change-Id: I9b2e6c45f7e83543a06d0aafd08a911f7b6485fd Reviewed-on: https://go-review.googlesource.com/29874Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Cherry Zhang authored
When allocating registers, before kicking out the existing value, copy it to a spare register if there is one. So later use of this value can be found in register instead of reload from spill. This is very helpful for instructions of which the input and/or output can only be in specific registers, e.g. DIV on x86, MUL/DIV on MIPS. May also be helpful in general. For "go build -a cmd/go" on AMD64, reduce "spilled value remains" by 1% (not including args, which almost certainly remain). For the code in issue #16061 on AMD64: MaxRem-12 111µs ± 1% 94µs ± 0% -15.38% (p=0.008 n=5+5) Go1 benchmark on AMD64: BinaryTree17-12 2.32s ± 2% 2.30s ± 1% ~ (p=0.421 n=5+5) Fannkuch11-12 2.52s ± 0% 2.44s ± 0% -3.44% (p=0.008 n=5+5) FmtFprintfEmpty-12 39.9ns ± 3% 39.8ns ± 0% ~ (p=0.635 n=5+4) FmtFprintfString-12 114ns ± 1% 113ns ± 1% ~ (p=0.905 n=5+5) FmtFprintfInt-12 102ns ± 6% 98ns ± 1% ~ (p=0.087 n=5+5) FmtFprintfIntInt-12 146ns ± 5% 147ns ± 1% ~ (p=0.238 n=5+5) FmtFprintfPrefixedInt-12 155ns ± 2% 151ns ± 1% -2.58% (p=0.008 n=5+5) FmtFprintfFloat-12 231ns ± 1% 232ns ± 1% ~ (p=0.286 n=5+5) FmtManyArgs-12 657ns ± 1% 649ns ± 0% -1.31% (p=0.008 n=5+5) GobDecode-12 6.35ms ± 0% 6.29ms ± 1% ~ (p=0.056 n=5+5) GobEncode-12 5.38ms ± 1% 5.45ms ± 1% ~ (p=0.056 n=5+5) Gzip-12 209ms ± 0% 209ms ± 1% ~ (p=0.690 n=5+5) Gunzip-12 31.2ms ± 1% 31.1ms ± 1% ~ (p=0.548 n=5+5) HTTPClientServer-12 123µs ± 4% 130µs ± 8% ~ (p=0.151 n=5+5) JSONEncode-12 14.0ms ± 1% 14.0ms ± 1% ~ (p=0.421 n=5+5) JSONDecode-12 41.2ms ± 1% 41.1ms ± 2% ~ (p=0.421 n=5+5) Mandelbrot200-12 3.96ms ± 1% 3.98ms ± 0% ~ (p=0.421 n=5+5) GoParse-12 2.88ms ± 1% 2.88ms ± 1% ~ (p=0.841 n=5+5) RegexpMatchEasy0_32-12 68.0ns ± 3% 66.6ns ± 1% -2.00% (p=0.024 n=5+5) RegexpMatchEasy0_1K-12 728ns ± 8% 682ns ± 1% -6.26% (p=0.008 n=5+5) RegexpMatchEasy1_32-12 66.8ns ± 2% 66.0ns ± 1% ~ (p=0.302 n=5+5) RegexpMatchEasy1_1K-12 291ns ± 2% 288ns ± 1% ~ (p=0.111 n=5+5) RegexpMatchMedium_32-12 103ns ± 2% 100ns ± 0% -2.53% (p=0.016 n=5+4) RegexpMatchMedium_1K-12 31.9µs ± 1% 31.3µs ± 0% -1.75% (p=0.008 n=5+5) RegexpMatchHard_32-12 1.59µs ± 2% 1.59µs ± 1% ~ (p=0.548 n=5+5) RegexpMatchHard_1K-12 48.3µs ± 2% 47.7µs ± 1% ~ (p=0.222 n=5+5) Revcomp-12 340ms ± 1% 338ms ± 1% ~ (p=0.421 n=5+5) Template-12 46.3ms ± 1% 46.5ms ± 1% ~ (p=0.690 n=5+5) TimeParse-12 252ns ± 1% 247ns ± 0% -1.91% (p=0.000 n=5+4) TimeFormat-12 277ns ± 1% 267ns ± 0% -3.82% (p=0.008 n=5+5) [Geo mean] 48.8µs 48.3µs -0.93% It has very little effect on binary size and compiler speed. compilebench: Template 230ms ±10% 231ms ± 8% ~ (p=0.546 n=9+9) Unicode 123ms ± 6% 124ms ± 9% ~ (p=0.481 n=10+10) GoTypes 742ms ± 6% 755ms ± 3% ~ (p=0.123 n=10+10) Compiler 3.10s ± 3% 3.08s ± 1% ~ (p=0.631 n=10+10) Fixes #16061. Change-Id: Id99cdc7a182ee10a704fa0f04e8e0d0809b2ac56 Reviewed-on: https://go-review.googlesource.com/29732 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Cherry Zhang authored
Change-Id: I8984eac30e5df78d4b94f19412135d3cc36969f8 Reviewed-on: https://go-review.googlesource.com/29910 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Chase <drchase@google.com>
-
Oliver Tonnhofer authored
Compression of paletted images is more efficient if they are not filtered. This patch skips filtering for cbP8 images. The improvements are demonstrated at https://github.com/olt/compressbench Fixes #16196 Change-Id: Ie973aad287cacf9057e394bb01cf0e4448a77618 Reviewed-on: https://go-review.googlesource.com/29872Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Alberto Donizetti authored
Realign multi-line comments that got misaligned by the c->go conversion. Change-Id: I584b902e95cf588aa14febf1e0b6dfa499c303c2 Reviewed-on: https://go-review.googlesource.com/29871Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Sam Whited authored
Change-Id: Idffb82cdcba4985954d061bdb021217f47ff4985 Reviewed-on: https://go-review.googlesource.com/29850Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michal Bohuslávek authored
Fixes #16984 Change-Id: I3a330e82941a068ca6097985af4ab221275fd336 Reviewed-on: https://go-review.googlesource.com/29299 Run-TryBot: Adam Langley <agl@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Adam Langley <agl@golang.org>
-
- 26 Sep, 2016 20 commits
-
-
Austin Clements authored
This optimizes deferproc and deferreturn in various ways. The most important optimization is that it more carefully arranges to prevent preemption or stack growth. Currently we do this by switching to the system stack on every deferproc and every deferreturn. While we need to be on the system stack for the slow path of allocating and freeing defers, in the common case we can fit in the nosplit stack. Hence, this change pushes the system stack switch down into the slow paths and makes everything now exposed to the user stack nosplit. This also eliminates the need for various acquirem/releasem pairs, since we are now preventing preemption by preventing stack split checks. As another smaller optimization, we special case the common cases of zero-sized and pointer-sized defer frames to respectively skip the copy and perform the copy in line instead of calling memmove. This speeds up the runtime defer benchmark by 42%: name old time/op new time/op delta Defer-4 75.1ns ± 1% 43.3ns ± 1% -42.31% (p=0.000 n=8+10) In reality, this speeds up defer by about 2.2X. The two benchmarks below compare a Lock/defer Unlock pair (DeferLock) with a Lock/Unlock pair (NoDeferLock). NoDeferLock establishes a baseline cost, so these two benchmarks together show that this change reduces the overhead of defer from 61.4ns to 27.9ns. name old time/op new time/op delta DeferLock-4 77.4ns ± 1% 43.9ns ± 1% -43.31% (p=0.000 n=10+10) NoDeferLock-4 16.0ns ± 0% 15.9ns ± 0% -0.39% (p=0.000 n=9+8) This also shaves 34ns off cgo calls: name old time/op new time/op delta CgoNoop-4 122ns ± 1% 88.3ns ± 1% -27.72% (p=0.000 n=8+9) Updates #14939, #16051. Change-Id: I2baa0dea378b7e4efebbee8fca919a97d5e15f38 Reviewed-on: https://go-review.googlesource.com/29656Reviewed-by: Keith Randall <khr@golang.org>
-
Austin Clements authored
This makes it possible to inline getcallersp. getcallersp is on the hot path of defers, so this slightly speeds up defer: name old time/op new time/op delta Defer-4 78.3ns ± 2% 75.1ns ± 1% -4.00% (p=0.000 n=9+8) Updates #14939. Change-Id: Icc1cc4cd2f0a81fc4c8344432d0b2e783accacdd Reviewed-on: https://go-review.googlesource.com/29655 TryBot-Result: Gobot Gobot <gobot@golang.org> Run-TryBot: Austin Clements <austin@google.com> Reviewed-by: David Crawshaw <crawshaw@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
Austin Clements authored
The big documentation comment at the top of malloc.go has gotten woefully out of date. Update it. Change-Id: Ibdb1bdcfdd707a6dc9db79d0633a36a28882301b Reviewed-on: https://go-review.googlesource.com/29731Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Austin Clements authored
This documents all fields in MemStats and more clearly documents where mstats differs from MemStats. Fixes #15849. Change-Id: Ie09374bcdb3a5fdd2d25fe4bba836aaae92cb1dd Reviewed-on: https://go-review.googlesource.com/28972Reviewed-by: Rob Pike <r@golang.org> Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
-
Austin Clements authored
We used to compute an estimate of the reachable heap size that was different from the marked heap size. This ultimately caused more problems than it solved, so we pulled it out, but memstats still has both heap_reachable and heap_marked, and there are some leftover TODOs about the problems with this estimate. Clean this up by eliminating heap_reachable in favor of heap_marked and deleting the stale TODOs. Change-Id: I713bc20a7c90683d2b43ff63c0b21a440269cc4d Reviewed-on: https://go-review.googlesource.com/29271 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Austin Clements authored
Back in Go 1.4, memstats.next_gc was both the heap size at which GC would trigger, and the size GC kept the heap under. When we switched to concurrent GC in Go 1.5, we got somewhat confused and made this variable the trigger heap size, while gcController.heapGoal became the goal heap size. memstats.next_gc is exposed to the user via MemStats.NextGC, while gcController.heapGoal is not. This is unfortunate because 1) the heap goal is far more useful for diagnostics, and 2) the trigger heap size is just part of the GC trigger heuristic, which means it wouldn't be useful to an application even if it tried to use it. We never noticed this mess because MemStats.NextGC is practically undocumented. Now that we're trying to document MemStats, it became clear that this field had diverged from its original usefulness. Clean up this mess by shuffling things back around so that next_gc is the goal heap size and the new (unexposed) memstats.gc_trigger field is the trigger heap size. This eliminates gcController.heapGoal. Updates #15849. Change-Id: I2cbbd43b1d78bdf613cb43f53488bd63913189b7 Reviewed-on: https://go-review.googlesource.com/29270 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com> Reviewed-by: Rick Hudson <rlh@golang.org>
-
Robert Griesemer authored
Fixes #17222. Change-Id: Iffffc8cbb8627d06afa9066246b68fa2da4600e3 Reviewed-on: https://go-review.googlesource.com/29810Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Robert Griesemer authored
Fixes #16963. Change-Id: Iaadf0da4ee9cc97146c5e6ac2d93de9ae6893880 Reviewed-on: https://go-review.googlesource.com/29790Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Ian Lance Taylor authored
Change-Id: I2cbb13eb85876ad05a52cbd498a9b86e7a28899c Reviewed-on: https://go-review.googlesource.com/29772 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Alberto Donizetti authored
Fixes #17221 Change-Id: Idaa2af6b8646651ea72195671d1a4b5c370a5a22 Reviewed-on: https://go-review.googlesource.com/29711Reviewed-by: Robert Griesemer <gri@golang.org>
-
Ian Lance Taylor authored
All the variants that sets the new signal mask in minit do the same thing, so merge them. This requires an OS-specific sigdelset function; the function already exists for linux, and is now added for other OS's. Change-Id: Ie96f6f02e2cf09c43005085985a078bd9581f670 Reviewed-on: https://go-review.googlesource.com/29771 Run-TryBot: Ian Lance Taylor <iant@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
David Chase authored
Added rules for compare double and word immediate, including those that use invertflags to cope with flipped operands. Change-Id: I594430a210e076e52299a2cc6ab074dbb04a02bd Reviewed-on: https://go-review.googlesource.com/29763 Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com> Reviewed-by: Lynn Boger <laboger@linux.vnet.ibm.com>
-
Alberto Donizetti authored
Fixes #16439 Updates #16679 Change-Id: Idff4b313f29351866b1a649786501adee85fd580 Reviewed-on: https://go-review.googlesource.com/29011 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Robert Griesemer <gri@golang.org>
-
Ian Lance Taylor authored
Combine the various versions of sigtrampgo into a single function in signal_unix.go. This requires defining a fixsigcode method on sigctxt for all operating systems; it only does something on Darwin. This also requires changing the darwin/amd64 signal handler to call sigreturn itself, rather than relying on sigtrampgo to call sigreturn for it. We can then drop the Darwin sigreturn function, as it is no longer used. Change-Id: I5a0b9d2d2c141957e151b41e694efeb20e4b4b9a Reviewed-on: https://go-review.googlesource.com/29761 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
David Chase authored
There's no load-signed-byte on PPC, so MOVB causes the assembler to macro-expand in a useless sign extension. Fixes #17211. Change-Id: Ibcd73aea4c94ba6df0a998b0091e45508113be2a Reviewed-on: https://go-review.googlesource.com/29762 Run-TryBot: David Chase <drchase@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Michael Munday <munday@ca.ibm.com> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Alberto Donizetti authored
When processing a fallthrough, the casebody function in swt.go checks that the last statement has indeed Op == OXFALL (not-processed fallthrough) before setting it to OFALL (processed fallthrough). Unfortunately, sometimes the fallthrough statement won't be in the last node. For example, in case 0: return func() int {return 1}() fallthrough the compiler generates autotmp_0 = (func literal)(); return autotmp_0; fallthrough; <node VARKILL> with an OVARKILL node in the last position. casebody will find that last.Op != OXFALL, won't mark the fallthrough as processed, and the fallthrough line will cause a "fallthrough statement out of place" error. To fix this, we change casebody so that it searches for the fallthrough statement backwards in the statements list, without assuming that it'll be in the last position. Fixes #13262 Change-Id: I366c6caa7fd7442d365bd7a08cc66a552212d9b2 Reviewed-on: https://go-review.googlesource.com/22921 Run-TryBot: Quentin Smith <quentin@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Quentin Smith <quentin@golang.org>
-
Ian Lance Taylor authored
Change all Unix systems to use stackt for the alternate signal stack (some were using sigaltstackt). Add OS-specific setSignalstackSP function to handle different types for ss_sp field, and unify all OS-specific signalstack functions into one. Unify handling of alternate signal stack in OS-specific minit and sigtrampgo functions via new functions minitSignalstack and setGsignalStack. Change-Id: Idc316dc69b1dd725717acdf61a1cd8b9f33ed174 Reviewed-on: https://go-review.googlesource.com/29757 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Emmanuel Odeke authored
Updates #13994 Updates #16840 Change-Id: Ia3cad5c211e0c688a945ed6b6277c2552592774c Reviewed-on: https://go-review.googlesource.com/29760 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Gyu-Ho Lee authored
To prevent slice growths with append operations. Change-Id: Icdb745b23cc44dfaf3e16746b94c06997f814e15 Reviewed-on: https://go-review.googlesource.com/23784Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Antonio Murdaca authored
Change-Id: I894a8f49d29dbb6f9265e4b3df5767318b225460 Signed-off-by: Antonio Murdaca <runcom@redhat.com> Reviewed-on: https://go-review.googlesource.com/24492Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 25 Sep, 2016 9 commits
-
-
Sam Whited authored
Fixes #16678 Change-Id: I48c2825d4fef55a75d2f99640a7079c56fce39db Reviewed-on: https://go-review.googlesource.com/28370Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Anders Pearson authored
Add a method to expose the handler to allow it to be installed at a non-standard location or used with a different ServeMux. fixes #15030 Change-Id: If778ad6fcc200f124a05c0a493511e364fca6078 Reviewed-on: https://go-review.googlesource.com/24722Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Ian Lance Taylor authored
Implement a comment by Ralph Corderoy on CL 29754. Change-Id: I22bbede211ddcb8a057f16b4f47d335a156cc8d2 Reviewed-on: https://go-review.googlesource.com/29756 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Change-Id: Iba541045b4878405834c637095627631b6559a35 Reviewed-on: https://go-review.googlesource.com/29754 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Dmitry Vyukov authored
Currently raceSymbolizeCode uses funcline, which is internal runtime function which crashes on incorrect PCs. Use FileLine instead, it is public and does not crash on invalid data. Note: FileLine returns "?" file on failure. That string is not NUL-terminated, so we need to additionally check what FileLine returns. Fixes #17190 Change-Id: Ic6fbd4f0e68ddd52e9b2dd25e625b50adcb69a98 Reviewed-on: https://go-review.googlesource.com/29714 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Dmitry Vyukov authored
Don't write line info for types, we don't have it. Otherwise types look like: type _Ctype_struct_cb struct { //line :1 on_test *[0]byte //line :1 } Which is not useful. Moreover we never override source info, so subsequent source code uses the same source info. Moreover, empty file name makes compile emit no source debug info at all. Update #17190 Change-Id: I7ae6fa4964520d7665743d340419b787df0b51e8 Reviewed-on: https://go-review.googlesource.com/29713 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Dmitry Vyukov authored
PC passed to racegostart is expected to be a return PC of the go statement. Race runtime will subtract 1 from the PC before symbolization. Passing start PC of a function is wrong. Add sys.PCQuantum to the function start PC. Update #17190 Change-Id: Ia504c49e79af84ed4ea360c2aea472b370ea8bf5 Reviewed-on: https://go-review.googlesource.com/29712 Run-TryBot: Dmitry Vyukov <dvyukov@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Jaana Burcu Dogan authored
This sentence is partially guilty why httptrace is considered as an http.Client tracing package. Removing the mention. Updates #17152. Change-Id: I69f78a6e10817db933f44e464a949ae896e44ec6 Reviewed-on: https://go-review.googlesource.com/29755Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Replace all the Unix sighandler functions with a single instance. Push the relatively small amount of processor-specific code into five methods on sigctxt: sigpc, sigsp, siglr, fault, preparePanic. (Some processors already had a fault method.) Change-Id: Ib459412ff8f7e0f5ad06bfd43eb827c8b196fc32 Reviewed-on: https://go-review.googlesource.com/29752 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: David Crawshaw <crawshaw@golang.org>
-