- 19 Feb, 2013 10 commits
-
-
Donovan Hide authored
Slightly better benchmarks for when string and separator are equivalent and also less branching in inner loops. benchmark old ns/op new ns/op delta BenchmarkGenericNoMatch 3430 3442 +0.35% BenchmarkGenericMatch1 23590 22855 -3.12% BenchmarkGenericMatch2 108031 105025 -2.78% BenchmarkSingleMaxSkipping 2969 2704 -8.93% BenchmarkSingleLongSuffixFail 2826 2572 -8.99% BenchmarkSingleMatch 205268 197832 -3.62% BenchmarkByteByteNoMatch 987 921 -6.69% BenchmarkByteByteMatch 2014 1749 -13.16% BenchmarkByteStringMatch 3083 3050 -1.07% BenchmarkHTMLEscapeNew 922 915 -0.76% BenchmarkHTMLEscapeOld 1654 1570 -5.08% BenchmarkByteByteReplaces 11897 11556 -2.87% BenchmarkByteByteMap 4485 4255 -5.13% BenchmarkIndexRune 174 121 -30.46% BenchmarkIndexRuneFastPath 41 41 -0.24% BenchmarkIndex 45 44 -0.22% BenchmarkMapNoChanges 433 431 -0.46% BenchmarkIndexHard1 4015336 3316490 -17.40% BenchmarkIndexHard2 3976254 3395627 -14.60% BenchmarkIndexHard3 3973158 3378329 -14.97% BenchmarkCountHard1 4403549 3448512 -21.69% BenchmarkCountHard2 4387437 3413059 -22.21% BenchmarkCountHard3 4403891 3382661 -23.19% BenchmarkIndexTorture 28354 25864 -8.78% BenchmarkCountTorture 29625 27463 -7.30% BenchmarkFields 38752040 39169840 +1.08% BenchmarkFieldsFunc 38797765 38888060 +0.23% benchmark old MB/s new MB/s speedup BenchmarkSingleMaxSkipping 3367.07 3697.62 1.10x BenchmarkSingleLongSuffixFail 354.51 389.47 1.10x BenchmarkSingleMatch 73.07 75.82 1.04x BenchmarkFields 27.06 26.77 0.99x BenchmarkFieldsFunc 27.03 26.96 1.00x R=dave, fullung, remyoudompheng, rsc CC=golang-dev https://golang.org/cl/7350045
-
Russ Cox authored
Generated by addca. R=gobot CC=golang-dev https://golang.org/cl/7351046
-
Russ Cox authored
If Python blocks in the SSL handshake it seems to be completely uninterruptible, and I've been seeing it block for at least hours recently. I don't know if the problem is on the client side or the server side or somewhere in the network, but setting the timeout at least means you're guaranteed a new shell prompt (after printing some errors). R=golang-dev, bradfitz, minux.ma CC=golang-dev https://golang.org/cl/7337048
-
Russ Cox authored
R=golang-dev, agl CC=golang-dev https://golang.org/cl/7304106
-
Russ Cox authored
The exact words are taken from the spec. Fixes some confusion on golang-nuts. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/7353044
-
Robin Eklind authored
If a test can be placed in the same package ("internal"), it is placed there. This facilitates testing of package-private details. Because of dependency cycles some packages cannot be tested by internal tests. R=golang-dev, rsc, mikioh.mikioh CC=golang-dev, r https://golang.org/cl/7323044
-
Shenghou Ma authored
R=iant CC=golang-dev https://golang.org/cl/7323064
-
Lucio De Re authored
R=minux.ma, bradfitz CC=golang-dev https://golang.org/cl/7307120
-
Volker Dobler authored
The current implementation would store all cookies received from any .com domain under "com" in the entries map if a nil public suffix list is used in constructing the Jar. This is inefficient. This CL uses the TLD+1 of the domain if the public suffix list is nil which has two advantages: - It uses the entries map efficiently. - It prevents a host foo.com to set cookies for bar.com. (It may set the cookie, but it won't be returned to bar.com.) A domain like www.british-library.uk may still set a domain cookie for .british-library.uk in this case. The behavior for a non-nil public suffix list is unchanged, cookies are stored under eTLD+1 in this case. R=nigeltao CC=golang-dev https://golang.org/cl/7312105
-
Andrew Wilkins authored
R=golang-dev, gri CC=golang-dev https://golang.org/cl/7358044
-
- 18 Feb, 2013 7 commits
-
-
Robert Griesemer authored
The field is nil for predeclared (universe) objects and parameter/result variables. R=adonovan CC=golang-dev https://golang.org/cl/7312093
-
Russ Cox authored
* Handle p==nil in signalstack by setting SS_DISABLE flag. * Make minit only allocate a signal g if there's not one already. R=golang-dev, r CC=golang-dev https://golang.org/cl/7323072
-
Russ Cox authored
copy+paste error while cleaning up CL 7303099 before submit R=ken2 CC=golang-dev https://golang.org/cl/7308104
-
Russ Cox authored
The routine that adds an automatic to the stack was adding ptrsize-1 to the size before rounding up. That addition would only make sense to turn a round down into a round up. Before a round up, it just wastes a word. The effect was that a 6c function with one local and one two-word function call used (8+8)+(16+8) = 40 bytes instead of 8+16 = 24 bytes. The wasted space mostly didn't matter, but one place where it does matter is when trying to stay within the 128-byte total frame constraint for #pragma textflag 7 functions. This only affects the C compilers, not the Go compilers. 5c already had correct code, which is now copied to 6c and 8c. R=ken2 CC=golang-dev https://golang.org/cl/7303099
-
Dmitriy Vyukov authored
Fixes #4835. R=golang-dev, fullung CC=golang-dev https://golang.org/cl/7319050
-
David Symonds authored
Fixes #3308. R=golang-dev, minux.ma CC=golang-dev https://golang.org/cl/7301086
-
Volker Dobler authored
Re-enable TestUpdateAndDelete, TestExpiration, TestChromiumDomain and TestChromiumDeletion on Windows. Sorting of cookies with same path length and same creation time is done by an additional seqNum field. This makes the order in which cookies are returned in Cookies deterministic, even if the system clock is manipulated or on systems with a low-resolution clock. The tests now use a synthetic time: This makes cookie testing reliable in case of bogus system clocks and speeds up the expiration tests. R=nigeltao, alex.brainman, dave CC=golang-dev https://golang.org/cl/7323063
-
- 17 Feb, 2013 2 commits
-
-
Joel Sing authored
Fix the sa_mask member of the sigaction struct - on FreeBSD this is declared as a sigset_t, which is an array of four unsigned ints. Replace the current int64 with Sigset from defs_freebsd_GOARCH, which has the correct definition. Unbreaks the FreeBSD builds. R=golang-dev, dave, minux.ma CC=golang-dev https://golang.org/cl/7333047
-
Rémy Oudompheng authored
The O(n+m) complexity is obtained probabilistically by using Rabin-Karp algorithm, which provides the needed complexity unless exceptional collisions occur, without memory allocation. benchmark old ns/op new ns/op delta BenchmarkIndexHard1 6532331 4045886 -38.06% BenchmarkIndexHard2 8178173 4038975 -50.61% BenchmarkIndexHard3 6973687 4042591 -42.03% BenchmarkCountHard1 6270864 4071090 -35.08% BenchmarkCountHard2 7838039 4072853 -48.04% BenchmarkCountHard3 6697828 4071964 -39.20% BenchmarkIndexTorture 2730546 28934 -98.94% BenchmarkCountTorture 2729622 29064 -98.94% Fixes #4600. R=rsc, donovanhide, remyoudompheng CC=golang-dev https://golang.org/cl/7314095
-
- 16 Feb, 2013 3 commits
-
-
Georg Reinke authored
R=golang-dev, jsing CC=golang-dev https://golang.org/cl/7312104
-
Mikio Hara authored
Also refactors mock ICMP stuff. R=dave, rsc CC=golang-dev https://golang.org/cl/7325043
-
Dave Cheney authored
R=rsc, dvyukov CC=golang-dev https://golang.org/cl/7312103
-
- 15 Feb, 2013 18 commits
-
-
Russ Cox authored
broke windows build ««« original CL description runtime: ensure forward progress of runtime.Gosched() for locked goroutines The removed code leads to the situation when M executes the same locked G again and again. Fixes #4820. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/7310096 »»» TBR=dvyukov CC=golang-dev https://golang.org/cl/7343050
-
Russ Cox authored
R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/7352044
-
Russ Cox authored
This works with at least one version of clang that existed at one moment in time. No guarantees about clangs past or future. To try: CC=clang all.bash It does not work with the Xcode clang, because that clang fails at printing a useful answer to: clang -print-libgcc-file-name The clang that works prints a full path name for that command, not just "libgcc.a". Fixes #4713. R=iant, minux.ma CC=golang-dev https://golang.org/cl/7323068
-
Russ Cox authored
R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/7317049
-
Russ Cox authored
Fixes #3586. R=golang-dev, iant CC=golang-dev https://golang.org/cl/7304098
-
Russ Cox authored
Should help if stack overflows start happening again. Fixes #3582. R=golang-dev, iant CC=golang-dev https://golang.org/cl/7311098
-
Russ Cox authored
Arguably if this happens the program is buggy anyway, but letting the panic continue looks better than interrupting it. Otherwise things like this are possible, and confusing: $ go run x.go panic: $ echo $? 0 $ Fixes #3934. R=golang-dev, r CC=golang-dev https://golang.org/cl/7322083
-
Russ Cox authored
To make sure that Go code will work when moved to a system with a case-insensitive file system, like OS X or Windows, reject any package built from files with names differing only in case, and also any package built from imported dependencies with names differing only in case. Fixes #4773. R=golang-dev, iant CC=golang-dev https://golang.org/cl/7314104
-
Russ Cox authored
Fixes #4644. R=r, adonovan CC=golang-dev https://golang.org/cl/7307083
-
Russ Cox authored
This is the same logic used in the standard tracebacks. The caller pc is the pc after the call, so except in the fake "call" caused by a panic, back up the pc enough that the lookup will use the previous instruction. Fixes #4150. Fixes #4151. R=golang-dev, iant CC=golang-dev https://golang.org/cl/7317047
-
Russ Cox authored
Before, the mheap structure was in the bss, but it's quite large (today, 256 MB, much of which is never actually paged in), and it makes Go binaries run afoul of exec-time bss size limits on some BSD systems. Fixes #4447. R=golang-dev, dave, minux.ma, remyoudompheng, iant CC=golang-dev https://golang.org/cl/7307122
-
Dmitriy Vyukov authored
The removed code leads to the situation when M executes the same locked G again and again. Fixes #4820. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/7310096
-
Russ Cox authored
(If the mask size is wrong the system call fails.) R=golang-dev, iant CC=golang-dev https://golang.org/cl/7305097
-
Russ Cox authored
Right now it says 'invalid type S' for a struct type S. Instead, say which type inside the struct is the problem. Fixes #4825. R=golang-dev, iant CC=golang-dev https://golang.org/cl/7301102
-
Russ Cox authored
More mysteriously broken tests. TBR=nigeltao CC=golang-dev https://golang.org/cl/7342048
-
Russ Cox authored
In addition to the compile failure fixed in signal*.c, preserving the signal mask led to very strange crashes. Testing shows that looking for SIG_IGN is all that matters to get along with nohup, so reintroduce sigset_zero instead of trying to preserve the signal mask. TBR=iant CC=golang-dev https://golang.org/cl/7323067
-
Russ Cox authored
TBR=nigeltao CC=golang-dev https://golang.org/cl/7322084
-
Russ Cox authored
There are two ways nohup(1) might be implemented: it might mask away the signal, or it might set the handler to SIG_IGN, both of which are inherited across fork+exec. So two fixes: * Make sure to preserve the inherited signal mask at minit instead of clearing it. * If the SIGHUP handler is SIG_IGN, leave it that way. Fixes #4491. R=golang-dev, mikioh.mikioh, iant CC=golang-dev https://golang.org/cl/7308102
-