1
0
mirror of https://github.com/golang/go synced 2024-11-19 20:54:39 -07:00
go/src/runtime
Dmitry Vyukov 475d113b53 runtime: don't burn CPU unnecessarily
Two GC-related functions, scang and casgstatus, wait in an active spin loop.
Active spinning is never a good idea in user-space. Once we wait several
times more than the expected wait time, something unexpected is happenning
(e.g. the thread we are waiting for is descheduled or handling a page fault)
and we need to yield to OS scheduler. Moreover, the expected wait time is
very high for these functions: scang wait time can be tens of milliseconds,
casgstatus can be hundreds of microseconds. It does not make sense to spin
even for that time.

go install -a std profile on a 4-core machine shows that 11% of time is spent
in the active spin in scang:

  6.12%    compile  compile                [.] runtime.scang
  3.27%    compile  compile                [.] runtime.readgstatus
  1.72%    compile  compile                [.] runtime/internal/atomic.Load

The active spin also increases tail latency in the case of the slightest
oversubscription: GC goroutines spend whole quantum in the loop instead of
executing user code.

Here is scang wait time histogram during go install -a std:

13707.0000 - 1815442.7667 [   118]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎...
1815442.7667 - 3617178.5333 [     9]: ∎∎∎∎∎∎∎∎∎
3617178.5333 - 5418914.3000 [    11]: ∎∎∎∎∎∎∎∎∎∎∎
5418914.3000 - 7220650.0667 [     5]: ∎∎∎∎∎
7220650.0667 - 9022385.8333 [    12]: ∎∎∎∎∎∎∎∎∎∎∎∎
9022385.8333 - 10824121.6000 [    13]: ∎∎∎∎∎∎∎∎∎∎∎∎∎
10824121.6000 - 12625857.3667 [    15]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
12625857.3667 - 14427593.1333 [    18]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
14427593.1333 - 16229328.9000 [    18]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
16229328.9000 - 18031064.6667 [    32]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
18031064.6667 - 19832800.4333 [    28]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
19832800.4333 - 21634536.2000 [     6]: ∎∎∎∎∎∎
21634536.2000 - 23436271.9667 [    15]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
23436271.9667 - 25238007.7333 [    11]: ∎∎∎∎∎∎∎∎∎∎∎
25238007.7333 - 27039743.5000 [    27]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
27039743.5000 - 28841479.2667 [    20]: ∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎∎
28841479.2667 - 30643215.0333 [    10]: ∎∎∎∎∎∎∎∎∎∎
30643215.0333 - 32444950.8000 [     7]: ∎∎∎∎∎∎∎
32444950.8000 - 34246686.5667 [     4]: ∎∎∎∎
34246686.5667 - 36048422.3333 [     4]: ∎∎∎∎
36048422.3333 - 37850158.1000 [     1]: ∎
37850158.1000 - 39651893.8667 [     5]: ∎∎∎∎∎
39651893.8667 - 41453629.6333 [     2]: ∎∎
41453629.6333 - 43255365.4000 [     2]: ∎∎
43255365.4000 - 45057101.1667 [     2]: ∎∎
45057101.1667 - 46858836.9333 [     1]: ∎
46858836.9333 - 48660572.7000 [     2]: ∎∎
48660572.7000 - 50462308.4667 [     3]: ∎∎∎
50462308.4667 - 52264044.2333 [     2]: ∎∎
52264044.2333 - 54065780.0000 [     2]: ∎∎

and the zoomed-in first part:

13707.0000 - 19916.7667 [     2]: ∎∎
19916.7667 - 26126.5333 [     2]: ∎∎
26126.5333 - 32336.3000 [     9]: ∎∎∎∎∎∎∎∎∎
32336.3000 - 38546.0667 [     8]: ∎∎∎∎∎∎∎∎
38546.0667 - 44755.8333 [    12]: ∎∎∎∎∎∎∎∎∎∎∎∎
44755.8333 - 50965.6000 [    10]: ∎∎∎∎∎∎∎∎∎∎
50965.6000 - 57175.3667 [     5]: ∎∎∎∎∎
57175.3667 - 63385.1333 [     6]: ∎∎∎∎∎∎
63385.1333 - 69594.9000 [     5]: ∎∎∎∎∎
69594.9000 - 75804.6667 [     6]: ∎∎∎∎∎∎
75804.6667 - 82014.4333 [     6]: ∎∎∎∎∎∎
82014.4333 - 88224.2000 [     4]: ∎∎∎∎
88224.2000 - 94433.9667 [     1]: ∎
94433.9667 - 100643.7333 [     1]: ∎
100643.7333 - 106853.5000 [     2]: ∎∎
106853.5000 - 113063.2667 [     0]:
113063.2667 - 119273.0333 [     2]: ∎∎
119273.0333 - 125482.8000 [     2]: ∎∎
125482.8000 - 131692.5667 [     1]: ∎
131692.5667 - 137902.3333 [     1]: ∎
137902.3333 - 144112.1000 [     0]:
144112.1000 - 150321.8667 [     2]: ∎∎
150321.8667 - 156531.6333 [     1]: ∎
156531.6333 - 162741.4000 [     1]: ∎
162741.4000 - 168951.1667 [     0]:
168951.1667 - 175160.9333 [     0]:
175160.9333 - 181370.7000 [     1]: ∎
181370.7000 - 187580.4667 [     1]: ∎
187580.4667 - 193790.2333 [     2]: ∎∎
193790.2333 - 200000.0000 [     0]:

Here is casgstatus wait time histogram:

  631.0000 -  5276.6333 [     3]: ∎∎∎
 5276.6333 -  9922.2667 [     5]: ∎∎∎∎∎
 9922.2667 - 14567.9000 [     2]: ∎∎
14567.9000 - 19213.5333 [     6]: ∎∎∎∎∎∎
19213.5333 - 23859.1667 [     5]: ∎∎∎∎∎
23859.1667 - 28504.8000 [     6]: ∎∎∎∎∎∎
28504.8000 - 33150.4333 [     6]: ∎∎∎∎∎∎
33150.4333 - 37796.0667 [     2]: ∎∎
37796.0667 - 42441.7000 [     1]: ∎
42441.7000 - 47087.3333 [     3]: ∎∎∎
47087.3333 - 51732.9667 [     0]:
51732.9667 - 56378.6000 [     1]: ∎
56378.6000 - 61024.2333 [     0]:
61024.2333 - 65669.8667 [     0]:
65669.8667 - 70315.5000 [     0]:
70315.5000 - 74961.1333 [     1]: ∎
74961.1333 - 79606.7667 [     0]:
79606.7667 - 84252.4000 [     0]:
84252.4000 - 88898.0333 [     0]:
88898.0333 - 93543.6667 [     0]:
93543.6667 - 98189.3000 [     0]:
98189.3000 - 102834.9333 [     0]:
102834.9333 - 107480.5667 [     1]: ∎
107480.5667 - 112126.2000 [     0]:
112126.2000 - 116771.8333 [     0]:
116771.8333 - 121417.4667 [     0]:
121417.4667 - 126063.1000 [     0]:
126063.1000 - 130708.7333 [     0]:
130708.7333 - 135354.3667 [     0]:
135354.3667 - 140000.0000 [     1]: ∎

Ideally we eliminate the waiting by switching to async
state machine for GC, but for now just yield to OS scheduler
after a reasonable wait time.

To choose yielding parameters I've measured
golang.org/x/benchmarks/http tail latencies with different yield
delays and oversubscription levels.

With no oversubscription (to the degree possible):

scang yield delay = 1, casgstatus yield delay = 1
Latency-50   1.41ms ±15%  1.41ms ± 5%    ~     (p=0.611 n=13+12)
Latency-95   5.21ms ± 2%  5.15ms ± 2%  -1.15%  (p=0.012 n=13+13)
Latency-99   7.16ms ± 2%  7.05ms ± 2%  -1.54%  (p=0.002 n=13+13)
Latency-999  10.7ms ± 9%  10.2ms ±10%  -5.46%  (p=0.004 n=12+13)

scang yield delay = 5000, casgstatus yield delay = 3000
Latency-50   1.41ms ±15%  1.41ms ± 8%    ~     (p=0.511 n=13+13)
Latency-95   5.21ms ± 2%  5.14ms ± 2%  -1.23%  (p=0.006 n=13+13)
Latency-99   7.16ms ± 2%  7.02ms ± 2%  -1.94%  (p=0.000 n=13+13)
Latency-999  10.7ms ± 9%  10.1ms ± 8%  -6.14%  (p=0.000 n=12+13)

scang yield delay = 10000, casgstatus yield delay = 5000
Latency-50   1.41ms ±15%  1.45ms ± 6%    ~     (p=0.724 n=13+13)
Latency-95   5.21ms ± 2%  5.18ms ± 1%    ~     (p=0.287 n=13+13)
Latency-99   7.16ms ± 2%  7.05ms ± 2%  -1.64%  (p=0.002 n=13+13)
Latency-999  10.7ms ± 9%  10.0ms ± 5%  -6.72%  (p=0.000 n=12+13)

scang yield delay = 30000, casgstatus yield delay = 10000
Latency-50   1.41ms ±15%  1.51ms ± 7%  +6.57%  (p=0.002 n=13+13)
Latency-95   5.21ms ± 2%  5.21ms ± 2%    ~     (p=0.960 n=13+13)
Latency-99   7.16ms ± 2%  7.06ms ± 2%  -1.50%  (p=0.012 n=13+13)
Latency-999  10.7ms ± 9%  10.0ms ± 6%  -6.49%  (p=0.000 n=12+13)

scang yield delay = 100000, casgstatus yield delay = 50000
Latency-50   1.41ms ±15%  1.53ms ± 6%  +8.48%  (p=0.000 n=13+12)
Latency-95   5.21ms ± 2%  5.23ms ± 2%    ~     (p=0.287 n=13+13)
Latency-99   7.16ms ± 2%  7.08ms ± 2%  -1.21%  (p=0.004 n=13+13)
Latency-999  10.7ms ± 9%   9.9ms ± 3%  -7.99%  (p=0.000 n=12+12)

scang yield delay = 200000, casgstatus yield delay = 100000
Latency-50   1.41ms ±15%  1.47ms ± 5%    ~     (p=0.072 n=13+13)
Latency-95   5.21ms ± 2%  5.17ms ± 2%    ~     (p=0.091 n=13+13)
Latency-99   7.16ms ± 2%  7.02ms ± 2%  -1.99%  (p=0.000 n=13+13)
Latency-999  10.7ms ± 9%   9.9ms ± 5%  -7.86%  (p=0.000 n=12+13)

With slight oversubscription (another instance of http benchmark
was running in background with reduced GOMAXPROCS):

scang yield delay = 1, casgstatus yield delay = 1
Latency-50    840µs ± 3%   804µs ± 3%  -4.37%  (p=0.000 n=15+18)
Latency-95   6.52ms ± 4%  6.03ms ± 4%  -7.51%  (p=0.000 n=18+18)
Latency-99   10.8ms ± 7%  10.0ms ± 4%  -7.33%  (p=0.000 n=18+14)
Latency-999  18.0ms ± 9%  16.8ms ± 7%  -6.84%  (p=0.000 n=18+18)

scang yield delay = 5000, casgstatus yield delay = 3000
Latency-50    840µs ± 3%   809µs ± 3%  -3.71%  (p=0.000 n=15+17)
Latency-95   6.52ms ± 4%  6.11ms ± 4%  -6.29%  (p=0.000 n=18+18)
Latency-99   10.8ms ± 7%   9.9ms ± 6%  -7.55%  (p=0.000 n=18+18)
Latency-999  18.0ms ± 9%  16.5ms ±11%  -8.49%  (p=0.000 n=18+18)

scang yield delay = 10000, casgstatus yield delay = 5000
Latency-50    840µs ± 3%   823µs ± 5%  -2.06%  (p=0.002 n=15+18)
Latency-95   6.52ms ± 4%  6.32ms ± 3%  -3.05%  (p=0.000 n=18+18)
Latency-99   10.8ms ± 7%  10.2ms ± 4%  -5.22%  (p=0.000 n=18+18)
Latency-999  18.0ms ± 9%  16.7ms ±10%  -7.09%  (p=0.000 n=18+18)

scang yield delay = 30000, casgstatus yield delay = 10000
Latency-50    840µs ± 3%   836µs ± 5%    ~     (p=0.442 n=15+18)
Latency-95   6.52ms ± 4%  6.39ms ± 3%  -2.00%  (p=0.000 n=18+18)
Latency-99   10.8ms ± 7%  10.2ms ± 6%  -5.15%  (p=0.000 n=18+17)
Latency-999  18.0ms ± 9%  16.6ms ± 8%  -7.48%  (p=0.000 n=18+18)

scang yield delay = 100000, casgstatus yield delay = 50000
Latency-50    840µs ± 3%   836µs ± 6%    ~     (p=0.401 n=15+18)
Latency-95   6.52ms ± 4%  6.40ms ± 4%  -1.79%  (p=0.010 n=18+18)
Latency-99   10.8ms ± 7%  10.2ms ± 5%  -4.95%  (p=0.000 n=18+18)
Latency-999  18.0ms ± 9%  16.5ms ±14%  -8.17%  (p=0.000 n=18+18)

scang yield delay = 200000, casgstatus yield delay = 100000
Latency-50    840µs ± 3%   828µs ± 2%  -1.49%  (p=0.001 n=15+17)
Latency-95   6.52ms ± 4%  6.38ms ± 4%  -2.04%  (p=0.001 n=18+18)
Latency-99   10.8ms ± 7%  10.2ms ± 4%  -4.77%  (p=0.000 n=18+18)
Latency-999  18.0ms ± 9%  16.9ms ± 9%  -6.23%  (p=0.000 n=18+18)

With significant oversubscription (background http benchmark
was running with full GOMAXPROCS):

scang yield delay = 1, casgstatus yield delay = 1
Latency-50   1.32ms ±12%  1.30ms ±13%    ~     (p=0.454 n=14+14)
Latency-95   16.3ms ±10%  15.3ms ± 7%  -6.29%  (p=0.001 n=14+14)
Latency-99   29.4ms ±10%  27.9ms ± 5%  -5.04%  (p=0.001 n=14+12)
Latency-999  49.9ms ±19%  45.9ms ± 5%  -8.00%  (p=0.008 n=14+13)

scang yield delay = 5000, casgstatus yield delay = 3000
Latency-50   1.32ms ±12%  1.29ms ± 9%    ~     (p=0.227 n=14+14)
Latency-95   16.3ms ±10%  15.4ms ± 5%  -5.27%  (p=0.002 n=14+14)
Latency-99   29.4ms ±10%  27.9ms ± 6%  -5.16%  (p=0.001 n=14+14)
Latency-999  49.9ms ±19%  46.8ms ± 8%  -6.21%  (p=0.050 n=14+14)

scang yield delay = 10000, casgstatus yield delay = 5000
Latency-50   1.32ms ±12%  1.35ms ± 9%     ~     (p=0.401 n=14+14)
Latency-95   16.3ms ±10%  15.0ms ± 4%   -7.67%  (p=0.000 n=14+14)
Latency-99   29.4ms ±10%  27.4ms ± 5%   -6.98%  (p=0.000 n=14+14)
Latency-999  49.9ms ±19%  44.7ms ± 5%  -10.56%  (p=0.000 n=14+11)

scang yield delay = 30000, casgstatus yield delay = 10000
Latency-50   1.32ms ±12%  1.36ms ±10%     ~     (p=0.246 n=14+14)
Latency-95   16.3ms ±10%  14.9ms ± 5%   -8.31%  (p=0.000 n=14+14)
Latency-99   29.4ms ±10%  27.4ms ± 7%   -6.70%  (p=0.000 n=14+14)
Latency-999  49.9ms ±19%  44.9ms ±15%  -10.13%  (p=0.003 n=14+14)

scang yield delay = 100000, casgstatus yield delay = 50000
Latency-50   1.32ms ±12%  1.41ms ± 9%  +6.37%  (p=0.008 n=14+13)
Latency-95   16.3ms ±10%  15.1ms ± 8%  -7.45%  (p=0.000 n=14+14)
Latency-99   29.4ms ±10%  27.5ms ±12%  -6.67%  (p=0.002 n=14+14)
Latency-999  49.9ms ±19%  45.9ms ±16%  -8.06%  (p=0.019 n=14+14)

scang yield delay = 200000, casgstatus yield delay = 100000
Latency-50   1.32ms ±12%  1.42ms ±10%   +7.21%  (p=0.003 n=14+14)
Latency-95   16.3ms ±10%  15.0ms ± 7%   -7.59%  (p=0.000 n=14+14)
Latency-99   29.4ms ±10%  27.3ms ± 8%   -7.20%  (p=0.000 n=14+14)
Latency-999  49.9ms ±19%  44.8ms ± 8%  -10.21%  (p=0.001 n=14+13)

All numbers are on 8 cores and with GOGC=10 (http benchmark has
tiny heap, few goroutines and low allocation rate, so by default
GC barely affects tail latency).

10us/5us yield delays seem to provide a reasonable compromise
and give 5-10% tail latency reduction. That's what used in this change.

go install -a std results on 4 core machine:

name      old time/op  new time/op  delta
Time       8.39s ± 2%   7.94s ± 2%  -5.34%  (p=0.000 n=47+49)
UserTime   24.6s ± 2%   22.9s ± 2%  -6.76%  (p=0.000 n=49+49)
SysTime    1.77s ± 9%   1.89s ±11%  +7.00%  (p=0.000 n=49+49)
CpuLoad    315ns ± 2%   313ns ± 1%  -0.59%  (p=0.000 n=49+48) # %CPU
MaxRSS    97.1ms ± 4%  97.5ms ± 9%    ~     (p=0.838 n=46+49) # bytes

Update #14396
Update #14189

Change-Id: I3f4109bf8f7fd79b39c466576690a778232055a2
Reviewed-on: https://go-review.googlesource.com/21503
Run-TryBot: Dmitry Vyukov <dvyukov@google.com>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Rick Hudson <rlh@golang.org>
Reviewed-by: Austin Clements <austin@google.com>
2016-04-05 15:52:03 +00:00
..
cgo cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
debug runtime/debug: clarify WriteHeapDump STW behavior 2016-03-16 17:02:50 +00:00
internal cmd/compile: added some intrinsics to SSA back end 2016-03-28 16:29:59 +00:00
msan runtime, runtime/msan: add msan runtime support 2015-10-21 17:50:39 +00:00
pprof runtime: don't print EnableGC flag in WriteHeapProfile() 2016-03-05 08:14:23 +00:00
race all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
testdata cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
trace net: deduplicate TCP socket code 2016-03-03 04:23:59 +00:00
alg.go all: single space after period. 2016-03-02 00:13:47 +00:00
append_test.go runtime: speed up growslice by avoiding divisions 2 2016-03-25 16:47:56 +00:00
asm_386.s runtime: don't use REP;MOVSB if CPUID doesn't say it is fast 2016-03-31 02:54:10 +00:00
asm_amd64.s runtime: don't use REP;MOVSB if CPUID doesn't say it is fast 2016-03-31 02:54:10 +00:00
asm_amd64p32.s all: single space after period. 2016-03-02 00:13:47 +00:00
asm_arm64.s all: single space after period. 2016-03-02 00:13:47 +00:00
asm_arm.s all: single space after period. 2016-03-02 00:13:47 +00:00
asm_mips64x.s all: single space after period. 2016-03-02 00:13:47 +00:00
asm_ppc64x.h all: single space after period. 2016-03-02 00:13:47 +00:00
asm_ppc64x.s bytes: Equal perf improvements on ppc64le/ppc64 2016-03-23 14:21:15 +00:00
asm.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
atomic_arm64.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
atomic_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
atomic_pointer.go runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
atomic_ppc64x.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
callers_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgo_mmap.go all: single space after period. 2016-03-02 00:13:47 +00:00
cgo_ppc64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgo.go runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
cgocall.go runtime: allocate mp.cgocallers earlier 2016-04-01 22:23:13 +00:00
cgocallback.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
cgocheck.go all: single space after period. 2016-03-02 00:13:47 +00:00
chan_test.go runtime: sleep less when we can do work 2016-04-05 15:32:06 +00:00
chan.go runtime: define lock order between G status and channel lock 2016-03-16 20:13:17 +00:00
chanbarrier_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
closure_test.go
compiler.go all: single space after period. 2016-03-02 00:13:47 +00:00
complex_test.go
complex.go
cpuprof.go all: single space after period. 2016-03-02 00:13:47 +00:00
cputicks.go all: single space after period. 2016-03-02 00:13:47 +00:00
crash_cgo_test.go runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
crash_test.go all: single space after period. 2016-03-02 00:13:47 +00:00
crash_unix_test.go runtime: fix deadlock in TestCrashDumpsAllThreads 2016-02-16 20:18:40 +00:00
debug.go all: single space after period. 2016-03-02 00:13:47 +00:00
defs1_linux.go
defs1_netbsd_386.go
defs1_netbsd_amd64.go
defs1_netbsd_arm.go
defs1_solaris_amd64.go
defs2_linux.go all: single space after period. 2016-03-02 00:13:47 +00:00
defs3_linux.go
defs_arm_linux.go build: move package sources from src/pkg to src 2014-09-08 00:08:51 -04:00
defs_darwin_386.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_amd64.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_arm64.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin_arm.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_darwin.go runtime: write sigsetstack for Darwin, fix sigaction arg 2015-12-18 20:56:10 +00:00
defs_dragonfly_amd64.go
defs_dragonfly.go
defs_freebsd_386.go
defs_freebsd_amd64.go
defs_freebsd_arm.go
defs_freebsd.go
defs_linux_386.go src/runtime: Add missing defs for android/386. 2015-08-27 15:14:41 +00:00
defs_linux_amd64.go runtime: add syscalls needed for android/amd64 logging. 2015-10-20 16:56:58 +00:00
defs_linux_arm64.go runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
defs_linux_arm.go
defs_linux_mips64x.go runtime: added go files for linux/mips64{,le} support 2015-11-12 04:47:15 +00:00
defs_linux_ppc64.go
defs_linux_ppc64le.go
defs_linux.go
defs_nacl_386.go
defs_nacl_amd64p32.go
defs_nacl_arm.go
defs_netbsd_386.go
defs_netbsd_amd64.go
defs_netbsd_arm.go
defs_netbsd.go
defs_openbsd_386.go
defs_openbsd_amd64.go
defs_openbsd_arm.go
defs_openbsd.go
defs_plan9_386.go runtime: signal handling support for plan9_arm 2016-03-07 16:25:17 +00:00
defs_plan9_amd64.go runtime: signal handling support for plan9_arm 2016-03-07 16:25:17 +00:00
defs_plan9_arm.go runtime: new files for plan9_arm support 2016-03-07 16:25:48 +00:00
defs_solaris_amd64.go
defs_solaris.go
defs_windows_386.go
defs_windows_amd64.go
defs_windows.go
duff_386.s
duff_amd64.s runtime: optimize duffcopy on amd64 2015-09-22 15:02:37 +00:00
duff_arm64.s
duff_arm.s
duff_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
duff_ppc64x.s cmd/internal/obj, runtime: add NOFRAME flag to suppress stack frame set up on ppc64x 2015-10-18 22:13:30 +00:00
env_plan9.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
env_posix.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
env_test.go
error.go cmd/compile: embed type string header in rtype 2016-02-24 17:12:15 +00:00
export_arm_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_futex_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_mmap_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
export_test.go runtime: fix pagesInUse accounting 2016-04-04 15:33:26 +00:00
export_windows_test.go runtime: change osyield to use Windows SwitchToThread 2016-04-04 10:05:05 +00:00
extern.go all: single space after period. 2016-03-02 00:13:47 +00:00
fastlog2_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
fastlog2.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
fastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
funcdata.h runtime: fix a typo in asssembly macro GO_RESULTS_INITIALIZED 2016-03-14 14:53:29 +00:00
futex_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
gc_test.go runtime: fix pagesInUse accounting 2016-04-04 15:33:26 +00:00
gcinfo_test.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
go_tls.h all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
hash32.go runtime: make aeshash more DOS-proof 2015-10-08 16:43:03 +00:00
hash64.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
hash_test.go runtime: add space 2016-03-18 21:31:49 +00:00
hashmap_fast.go all: single space after period. 2016-03-02 00:13:47 +00:00
hashmap.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
heapdump.go runtime: update link to WriteHeapDump format 2016-03-15 22:09:43 +00:00
iface_test.go
iface.go cmd/compile: optimize remaining convT2I calls 2016-03-29 02:21:50 +00:00
lfstack_32bit.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_amd64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_darwin_arm64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_linux_arm64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_linux_mips64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_linux_ppc64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
lfstack_test.go
lfstack.go runtime: fix vet warning about println 2015-11-12 05:19:58 +00:00
lock_futex.go all: single space after period. 2016-03-02 00:13:47 +00:00
lock_sema.go all: single space after period. 2016-03-02 00:13:47 +00:00
Makefile
malloc_test.go runtime: accept NumGC==0 in TestMemStats 2015-12-16 18:54:50 +00:00
malloc.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
map_test.go
mapspeed_test.go
mbarrier.go cmd/compile: remove unused write barrier helpers 2016-03-29 00:16:55 +00:00
mbitmap.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
mcache.go all: single space after period. 2016-03-02 00:13:47 +00:00
mcentral.go all: single space after period. 2016-03-02 00:13:47 +00:00
mem_bsd.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
mem_darwin.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
mem_linux.go all: single space after period. 2016-03-02 00:13:47 +00:00
mem_plan9.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
mem_windows.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
memclr_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memclr_amd64.s all: fix typos and spelling 2016-02-24 18:42:29 +00:00
memclr_arm64.s runtime: adjust the arm64 memmove and memclr to operate by word as much as they can 2015-10-08 07:49:35 +00:00
memclr_arm.s all: single space after period. 2016-03-02 00:13:47 +00:00
memclr_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
memclr_plan9_386.s runtime: memmove/memclr pointers atomically 2015-11-07 02:42:12 +00:00
memclr_plan9_amd64.s
memclr_ppc64x.s cmd/internal/obj, runtime: add NOFRAME flag to suppress stack frame set up on ppc64x 2015-10-18 22:13:30 +00:00
memmove_386.s runtime: don't use REP;MOVSB if CPUID doesn't say it is fast 2016-03-31 02:54:10 +00:00
memmove_amd64.s runtime: don't use REP;MOVSB if CPUID doesn't say it is fast 2016-03-31 02:54:10 +00:00
memmove_arm64.s runtime: adjust the arm64 memmove and memclr to operate by word as much as they can 2015-10-08 07:49:35 +00:00
memmove_arm.s all: single space after period. 2016-03-02 00:13:47 +00:00
memmove_linux_amd64_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
memmove_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
memmove_nacl_amd64p32.s all: single space after period. 2016-03-02 00:13:47 +00:00
memmove_plan9_386.s all: single space after period. 2016-03-02 00:13:47 +00:00
memmove_plan9_amd64.s all: single space after period. 2016-03-02 00:13:47 +00:00
memmove_ppc64x.s all: fix typos and spelling 2016-02-24 18:42:29 +00:00
memmove_test.go runtime: use MOVSB instead of MOVSQ for unaligned moves 2016-03-21 19:10:24 +00:00
mfinal_test.go runtime: enable TestEmptySlice 2015-07-30 04:47:16 +00:00
mfinal.go runtime: fix names in SetFinalizer doc comment 2016-03-10 18:20:44 +00:00
mfixalloc.go all: single space after period. 2016-03-02 00:13:47 +00:00
mgc.go runtime: generalize work.finalizersDone to work.markrootDone 2016-03-16 20:13:22 +00:00
mgcmark.go runtime: shrink stacks during concurrent mark 2016-03-16 20:13:25 +00:00
mgcsweep.go runtime: print sweep ratio if gcpacertrace>0 2016-03-30 02:27:58 +00:00
mgcwork.go all: single space after period. 2016-03-02 00:13:47 +00:00
mheap.go runtime: fix pagesInUse accounting 2016-04-04 15:33:26 +00:00
mkduff.go runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
mkfastlog2table.go pprof: improve sampling for heap profiling 2015-10-05 08:15:09 +00:00
mknacl.sh
mmap.go all: single space after period. 2016-03-02 00:13:47 +00:00
mprof.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
msan0.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
msan_amd64.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
msan.go all: single space after period. 2016-03-02 00:13:47 +00:00
msize.go all: single space after period. 2016-03-02 00:13:47 +00:00
mstats.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
mstkbar.go runtime: document stack barrier synchronization rules 2015-12-18 17:08:52 +00:00
netpoll_epoll.go runtime: on unexpected netpoll error, throw instead of looping 2015-09-15 17:56:56 +00:00
netpoll_kqueue.go all: single space after period. 2016-03-02 00:13:47 +00:00
netpoll_nacl.go
netpoll_solaris.go all: fix typos and spelling 2016-02-24 18:42:29 +00:00
netpoll_stub.go
netpoll_windows.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
netpoll.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
noasm.go runtime: added mips64{,le} build tags and GOARCH cases 2015-11-12 04:47:42 +00:00
norace_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
norace_test.go all: use cannot instead of can not 2016-02-21 15:35:50 +00:00
os1_darwin.go all: single space after period. 2016-03-02 00:13:47 +00:00
os1_dragonfly.go all: single space after period. 2016-03-02 00:13:47 +00:00
os1_freebsd.go all: single space after period. 2016-03-02 00:13:47 +00:00
os1_linux_generic.go runtime: restructured os1_linux.go, added mips64 support 2015-11-12 04:48:23 +00:00
os1_linux_mips64x.go runtime: restructured os1_linux.go, added mips64 support 2015-11-12 04:48:23 +00:00
os1_linux.go runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
os1_nacl.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
os1_netbsd_386.go
os1_netbsd_amd64.go
os1_netbsd.go all: single space after period. 2016-03-02 00:13:47 +00:00
os1_openbsd.go all: single space after period. 2016-03-02 00:13:47 +00:00
os1_plan9.go runtime: avoid fork/exit race in plan9 2016-03-25 15:04:45 +00:00
os1_windows.go runtime: change osyield to use Windows SwitchToThread 2016-04-04 10:05:05 +00:00
os2_darwin.go
os2_dragonfly.go runtime: readjust signal code for dragonfly-2.6 and above 2016-01-16 00:47:55 +00:00
os2_freebsd.go
os2_linux_generic.go runtime: renamed os2_linux.go to os2_linux_generic.go, added mips64 support 2015-11-12 04:48:43 +00:00
os2_linux_mips64x.go runtime: renamed os2_linux.go to os2_linux_generic.go, added mips64 support 2015-11-12 04:48:43 +00:00
os2_nacl.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os2_netbsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os2_openbsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os2_plan9.go
os2_solaris.go
os2_windows.go
os3_plan9.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
os3_solaris.go all: single space after period. 2016-03-02 00:13:47 +00:00
os_android.go runtime: android/arm64 support 2015-11-17 16:28:18 +00:00
os_darwin_arm64.go
os_darwin_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_darwin.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_dragonfly.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_freebsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_freebsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_linux_386.go runtime, syscall: switch linux/386 to use int 0x80 2016-02-24 02:07:17 +00:00
os_linux_arm64.go
os_linux_arm.go runtime: break out system-specific constants into package sys 2015-11-12 17:04:45 +00:00
os_linux_mips64x.go runtime: added go files for linux/mips64{,le} support 2015-11-12 04:47:15 +00:00
os_linux.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_nacl_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_nacl.go all: single space after period. 2016-03-02 00:13:47 +00:00
os_netbsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_netbsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_openbsd_arm.go runtime: run on GOARM=5 and GOARM=6 uniprocessor freebsd/arm systems 2015-08-07 17:39:07 +00:00
os_openbsd.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_plan9_arm.go runtime: new files for plan9_arm support 2016-03-07 16:25:48 +00:00
os_plan9.go runtime: signal handling support for plan9_arm 2016-03-07 16:25:17 +00:00
os_solaris.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
os_windows.go all: single space after period. 2016-03-02 00:13:47 +00:00
panic.go runtime: fix off-by-one error finding module for PC 2016-03-04 21:06:31 +00:00
print.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
proc_runtime_test.go runtime: improve randomized stealing logic 2016-03-25 11:00:48 +00:00
proc_test.go runtime: improve randomized stealing logic 2016-03-25 11:00:48 +00:00
proc.go runtime: don't burn CPU unnecessarily 2016-04-05 15:52:03 +00:00
race0.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
race_amd64.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
race.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
rdebug.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
rt0_android_386.s cmd,runtime: TLS setup for android/386 2015-11-11 21:59:24 +00:00
rt0_android_amd64.s runtime, cmd: TLS setup for android/amd64. 2015-10-28 20:54:28 +00:00
rt0_android_arm64.s runtime: init argc/argv for android/arm64 c-shared 2015-12-15 13:49:47 +00:00
rt0_android_arm.s
rt0_darwin_386.s runtime: for c-archive/c-shared, install signal handlers synchronously 2016-01-09 00:58:38 +00:00
rt0_darwin_amd64.s runtime: for c-archive/c-shared, install signal handlers synchronously 2016-01-09 00:58:38 +00:00
rt0_darwin_arm64.s runtime, runtime/cgo: save callee-saved FP registers on arm64 2016-03-25 23:04:44 +00:00
rt0_darwin_arm.s runtime: preserve darwin/arm{,64} callee-save registers 2016-03-15 08:43:34 +00:00
rt0_dragonfly_amd64.s
rt0_freebsd_386.s
rt0_freebsd_amd64.s
rt0_freebsd_arm.s
rt0_linux_386.s runtime, syscall: switch linux/386 to use int 0x80 2016-02-24 02:07:17 +00:00
rt0_linux_amd64.s runtime: for c-archive/c-shared, install signal handlers synchronously 2016-01-09 00:58:38 +00:00
rt0_linux_arm64.s runtime, runtime/cgo: save callee-saved FP registers on arm64 2016-03-25 23:04:44 +00:00
rt0_linux_arm.s all: single space after period. 2016-03-02 00:13:47 +00:00
rt0_linux_mips64x.s runtime: added assembly part of linux/mips64{,le} support 2015-11-12 04:46:17 +00:00
rt0_linux_ppc64.s runtime, runtime/cgo: conform to PIC register use rules in ppc64 asm 2015-10-18 23:36:39 +00:00
rt0_linux_ppc64le.s runtime: replace tls0 with m0.tls 2015-11-13 01:53:00 +00:00
rt0_nacl_386.s
rt0_nacl_amd64p32.s
rt0_nacl_arm.s
rt0_netbsd_386.s
rt0_netbsd_amd64.s
rt0_netbsd_arm.s
rt0_openbsd_386.s
rt0_openbsd_amd64.s
rt0_openbsd_arm.s
rt0_plan9_386.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_plan9_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_plan9_arm.s runtime: new files for plan9_arm support 2016-03-07 16:25:48 +00:00
rt0_solaris_amd64.s runtime: replace is{plan9,solaris,windows} with GOOS tests 2015-10-23 18:11:17 +00:00
rt0_windows_386.s cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
rt0_windows_amd64.s cmd/go: fix -buildmode=c-archive should work on windows 2016-04-04 03:38:25 +00:00
rune.go
runtime1.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
runtime2.go runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
runtime_linux_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
runtime_mmap_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
runtime_test.go all: single space after period. 2016-03-02 00:13:47 +00:00
runtime_unix_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
runtime-gdb_test.go [dev.ssa] Merge remote-tracking branch 'origin/master' into mergebranch 2016-01-07 10:01:08 -08:00
runtime-gdb.py
runtime-lldb_test.go cmd/link: fix padding for dwarf aranges on 32 bit platforms. 2016-02-12 19:13:11 +00:00
runtime.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
select.go runtime: never pass stack pointers to gopark 2016-03-16 20:13:10 +00:00
sema.go sync: new Cond implementation 2016-03-15 22:01:20 +00:00
signal1_unix.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
signal2_unix.go all: single space after period. 2016-03-02 00:13:47 +00:00
signal_386.go all: single space after period. 2016-03-02 00:13:47 +00:00
signal_amd64x.go all: single space after period. 2016-03-02 00:13:47 +00:00
signal_arm64.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_arm.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_darwin_386.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_darwin_amd64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_darwin_arm64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_darwin_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_darwin.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
signal_dragonfly_amd64.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_dragonfly.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
signal_freebsd_386.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_freebsd_amd64.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_freebsd_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_freebsd.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
signal_linux_386.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_linux_amd64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_linux_arm64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_linux_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_linux_mips64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_linux_ppc64x.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_mips64x.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_nacl_386.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_nacl_amd64p32.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_nacl_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_nacl.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
signal_netbsd_386.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_netbsd_amd64.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_netbsd_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_netbsd.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
signal_openbsd_386.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_openbsd_amd64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_openbsd_arm.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_openbsd.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
signal_plan9.go runtime: signal handling support for plan9_arm 2016-03-07 16:25:17 +00:00
signal_ppc64x.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
signal_sigtramp.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
signal_solaris_amd64.go runtime: fix signal handling on Solaris 2016-03-25 21:38:47 +00:00
signal_solaris.go all: fix spelling mistakes 2016-04-03 17:03:15 +00:00
signal_unix.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
signal_windows.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
sigpanic_unix.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
sigqueue_plan9.go all: single space after period. 2016-03-02 00:13:47 +00:00
sigqueue.go runtime: improve last ditch signal forwarding for Unix libraries 2016-03-24 19:34:17 +00:00
sigtab_linux_generic.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
sigtab_linux_mips64x.go runtime: set SIGCONT to _SigNotify + _SigDefault 2016-01-05 17:44:46 +00:00
slice.go runtime: speed up growslice by avoiding divisions 2 2016-03-25 16:47:56 +00:00
softfloat64_test.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
softfloat64.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
softfloat_arm.go runtime: eliminate unnecessary type conversions 2016-03-07 20:53:27 +00:00
sqrt_test.go runtime: copy sqrt normalization bugfix from math 2015-10-23 23:43:47 +00:00
sqrt.go all: single space after period. 2016-03-02 00:13:47 +00:00
stack_test.go all: single space after period. 2016-03-02 00:13:47 +00:00
stack.go runtime: shrink stacks during concurrent mark 2016-03-16 20:13:25 +00:00
string_test.go cmd/compile: fix stringtoslicebytetmp optimization 2016-03-27 19:12:37 +00:00
string.go cmd/compile, runtime: fix pedantic int->string conversions 2016-03-31 10:28:23 +00:00
stubs2.go runtime, runtime/cgo: support using msan on cgo code 2015-09-30 22:17:55 +00:00
stubs32.go
stubs_android.go runtime: add syscalls needed for android/amd64 logging. 2015-10-20 16:56:58 +00:00
stubs.go runtime: unify memeq and memequal 2016-02-23 00:15:38 +00:00
symtab_test.go
symtab.go cmd/link: collect itablinks as a slice in moduledata 2016-03-29 02:18:56 +00:00
sys_arm64.go
sys_arm.go runtime: replace divide with multiply in runtime.usleep on arm 2015-07-30 15:48:29 +00:00
sys_darwin_386.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_darwin_amd64.s runtime: for c-archive/c-shared, don't install unnecessary signal handlers 2015-12-18 22:27:38 +00:00
sys_darwin_arm64.s all: use cannot instead of can not 2016-02-21 15:35:50 +00:00
sys_darwin_arm.s all: use cannot instead of can not 2016-02-21 15:35:50 +00:00
sys_dragonfly_amd64.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_freebsd_386.s runtime: adjust gsignal stack to current signal stack 2015-12-24 17:00:04 +00:00
sys_freebsd_amd64.s runtime: adjust gsignal stack to current signal stack 2015-12-24 17:00:04 +00:00
sys_freebsd_arm.s runtime: adjust gsignal stack to current signal stack 2015-12-24 17:00:04 +00:00
sys_linux_386.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_linux_amd64.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_linux_arm64.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_linux_arm.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_linux_mips64x.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_linux_ppc64x.s runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
sys_mips64x.go runtime: added go files for mips64 architecture support 2015-11-12 04:46:50 +00:00
sys_nacl_386.s runtime: fix errno sign for some mmap and mincore cases 2016-02-12 00:07:29 +00:00
sys_nacl_amd64p32.s
sys_nacl_arm.s runtime: break atomics out into package runtime/internal/atomic 2015-11-10 17:38:04 +00:00
sys_netbsd_386.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_netbsd_amd64.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_netbsd_arm.s runtime: adjust gsignal stack to current signal stack 2015-12-24 17:00:04 +00:00
sys_nonppc64x.go cmd/compile, cmd/link, runtime: on ppc64x, maintain the TOC pointer in R2 when compiling PIC 2015-11-12 23:18:58 +00:00
sys_openbsd_386.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_openbsd_amd64.s all: single space after period. 2016-03-02 00:13:47 +00:00
sys_openbsd_arm.s runtime: adjust gsignal stack to current signal stack 2015-12-24 17:00:04 +00:00
sys_plan9_386.s runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
sys_plan9_amd64.s runtime: split plan9 and solaris's m fields into new embedded mOS type 2015-10-22 00:04:52 +00:00
sys_plan9_arm.s runtime: new files for plan9_arm support 2016-03-07 16:25:48 +00:00
sys_ppc64x.go cmd/compile, cmd/link, runtime: on ppc64x, maintain the TOC pointer in R2 when compiling PIC 2015-11-12 23:18:58 +00:00
sys_solaris_amd64.s runtime: fix signal handling on Solaris 2016-03-25 21:38:47 +00:00
sys_windows_386.s runtime: change osyield to use Windows SwitchToThread 2016-04-04 10:05:05 +00:00
sys_windows_amd64.s runtime: change osyield to use Windows SwitchToThread 2016-04-04 10:05:05 +00:00
sys_x86.go all: single space after period. 2016-03-02 00:13:47 +00:00
syscall2_solaris.go runtime, syscall: remove unused bits from Solaris implementation 2015-08-21 11:39:24 +00:00
syscall_nacl.h
syscall_solaris.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
syscall_windows_test.go runtime: leave directory before removing it in TestDLLPreloadMitigation 2016-04-05 04:32:49 +00:00
syscall_windows.go runtime, syscall: only search for Windows DLLs in the System32 directory 2016-04-01 22:55:36 +00:00
textflag.h cmd/compile: track reflect.Type.Method in deadcode 2016-03-11 21:19:20 +00:00
time.go all: single space after period. 2016-03-02 00:13:47 +00:00
tls_arm64.h runtime: set TLSG_IS_VARIABLE for android/arm64. 2015-12-02 22:00:04 +00:00
tls_arm64.s cmd/internal/obj, cmd/link, runtime: native-ish support for tls on arm64 2015-10-28 19:51:05 +00:00
tls_arm.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
tls_mips64x.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
tls_ppc64x.s all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
trace.go runtime: acquire stack lock in traceEvent 2016-01-27 02:22:09 +00:00
traceback.go runtime: support symbolic backtrace of C code in a cgo crash 2016-04-01 04:13:44 +00:00
type.go cmd/compile, runtime: new static name encoding 2016-03-25 00:13:49 +00:00
typekind.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
unaligned1.go runtime: use unaligned loads on ppc64 2016-03-18 19:21:53 +00:00
unaligned2.go runtime: use unaligned loads on ppc64 2016-03-18 19:21:53 +00:00
vdso_linux_amd64.go all: use cannot instead of can not 2016-02-21 15:35:50 +00:00
vdso_none.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
vlop_386.s all: single space after period. 2016-03-02 00:13:47 +00:00
vlop_arm_test.go runtime: replace divide with multiply in runtime.usleep on arm 2015-07-30 15:48:29 +00:00
vlop_arm.s all: single space after period. 2016-03-02 00:13:47 +00:00
vlrt.go all: single space after period. 2016-03-02 00:13:47 +00:00
wincallback.go all: make copyright headers consistent with one space after period 2016-03-01 23:34:33 +00:00
write_err_android.go runtime: change odd 'print1_write' file names 2015-10-20 23:03:06 +00:00
write_err.go runtime: change odd 'print1_write' file names 2015-10-20 23:03:06 +00:00
zcallback_windows.go
zcallback_windows.s