- 01 Nov, 2012 26 commits
-
-
Robert Griesemer authored
- minor unrelated cleanups - performance impact in the noise benchmark old ns/op new ns/op delta BenchmarkReadSlice1000Int32s 83462 83346 -0.14% BenchmarkReadStruct 4141 4247 +2.56% BenchmarkReadInts 1588 1586 -0.13% BenchmarkWriteInts 1550 1489 -3.94% BenchmarkPutUvarint32 39 39 +1.02% BenchmarkPutUvarint64 142 144 +1.41% benchmark old MB/s new MB/s speedup BenchmarkReadSlice1000Int32s 47.93 47.99 1.00x BenchmarkReadStruct 16.90 16.48 0.98x BenchmarkReadInts 18.89 18.91 1.00x BenchmarkWriteInts 19.35 20.15 1.04x BenchmarkPutUvarint32 101.90 100.82 0.99x BenchmarkPutUvarint64 56.11 55.45 0.99x Fixes #4185. R=r, rsc CC=golang-dev https://golang.org/cl/6750053
-
Russ Cox authored
R=dvyukov CC=golang-dev https://golang.org/cl/6810067
-
Dmitriy Vyukov authored
R=golang-dev CC=golang-dev https://golang.org/cl/6826047
-
Dmitriy Vyukov authored
1. Prepend racefuncenter() to fn->enter -- fn->enter can contain new() calls, and we want them to be in the scope of the function. 2. Dump fn->enter and fn->exit. 3. Add TODO that OTYPESW expression can contain interesting memory accesses. 4. Ignore only _ names instead of all names starting with _. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6822048
-
Han-Wen Nienhuys authored
R=golang-dev, minux.ma, fullung, dave, rsc, hanwenn CC=golang-dev https://golang.org/cl/6350074
-
Rémy Oudompheng authored
go test -race -run none -bench . encoding/json benchmark old ns/op new ns/op delta BenchmarkCodeEncoder 3207689000 1716149000 -46.50% BenchmarkCodeMarshal 3206761000 1715677000 -46.50% BenchmarkCodeDecoder 8647304000 4482709000 -48.16% BenchmarkCodeUnmarshal 8032217000 3451248000 -57.03% BenchmarkCodeUnmarshalReuse 8016722000 3480502000 -56.58% BenchmarkSkipValue 10340453000 4560313000 -55.90% benchmark old MB/s new MB/s speedup BenchmarkCodeEncoder 0.60 1.13 1.88x BenchmarkCodeMarshal 0.61 1.13 1.85x BenchmarkCodeDecoder 0.22 0.43 1.95x BenchmarkCodeUnmarshal 0.24 0.56 2.33x BenchmarkCodeUnmarshalReuse 0.24 0.56 2.33x BenchmarkSkipValue 0.19 0.44 2.32x Fixes #4248. R=dvyukov, golang-dev, rsc CC=golang-dev https://golang.org/cl/6815066
-
Robert Griesemer authored
- simplified assignment checking by removing duplicate code - implemented field lookup (methods, structs, embedded fields) - importing methods (not just parsing them) - type-checking functions and methods - typechecking more statements (inc/dec, select, return) - tracing support for easier debugging - handling nil more correctly (comparisons) - initial support for [...]T{} arrays - initial support for method expressions - lots of bug fixes All packages under pkg/go as well as pkg/exp/types typecheck now with pkg/exp/gotype applied to them; i.e., a significant amount of typechecking works now (several statements are not implemented yet, but handling statements is almost trivial in comparison with typechecking expressions). R=rsc CC=golang-dev https://golang.org/cl/6768063
-
Ian Lance Taylor authored
Use wrapper functions to tell scheduler what we are doing. With this patch, and a separate patch to the go tool, all the cgo tests pass with gccgo. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6812058
-
Ian Lance Taylor authored
* Use -fgo-pkgpath and -gccgopkgpath rather than -fgo-prefix and -gccgoprefix. * Define GOPKGPATH when compiling .c or .s files for gccgo. * Use -fgo-relative-import-path. * Produce .o files for gccgo, not .[568] files. * Pass -E when linking if using cgo. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6820064
-
Ian Lance Taylor authored
This supports writing different .c/.s code when using gccgo. R=golang-dev, dsymonds, iant, rsc CC=golang-dev https://golang.org/cl/6823055
-
Dmitriy Vyukov authored
The idea is to (1) process ninit of all nodes, and (2) put instrumentation of ninit into the nodes themselves (not the top-level statement ninit). Fixes #4304. R=golang-dev, rsc CC=golang-dev, lvd https://golang.org/cl/6818049
-
Rémy Oudompheng authored
When local declarations needed unexported types, these could be missing in the export data. Fixes build with -gcflags -lll, except for exp/gotype. R=golang-dev, rsc, lvd CC=golang-dev https://golang.org/cl/6813067
-
Dmitriy Vyukov authored
R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6612064
-
Rémy Oudompheng authored
Fixes #4323. R=rsc, lvd, golang-dev CC=golang-dev https://golang.org/cl/6815061
-
Ryan Hitchman authored
Helps with issue 2703. R=dave, minux.ma, rsc CC=golang-dev https://golang.org/cl/5536078
-
Daniel Morsing authored
This should make the compiler emit errors specific to the bounds checking instead of overflow errors on the underlying types. Updates #4232. R=rsc CC=golang-dev https://golang.org/cl/6783054
-
Robert Griesemer authored
This is an attempt at making the interaction between these three constructs clearer. Specifically: - return statements terminate a function, execute deferred functions, return to the caller, and then execution continues after the call - panic calls terminate a function, execute deferred functions, return to the caller, and then re-panic - deferred functions are executed before a function _returns_ to its caller The hope is that with this change it becomes clear when a deferred function is executed (when a function returns), and when it is not (when a program exits). R=r, rsc, iant, ken, iant CC=golang-dev https://golang.org/cl/6736071
-
Jan Ziak authored
The 'type' field of Itab will be used by the garbage collector. R=rsc CC=golang-dev https://golang.org/cl/6815059
-
Alexey Borzenkov authored
Incorrect cast was causing panics when calling String() on dnsMsg with dnsRR_A answers. R=golang-dev, dave, rsc CC=golang-dev https://golang.org/cl/6818043
-
Jan Ziak authored
R=golang-dev CC=golang-dev, remyoudompheng, rsc https://golang.org/cl/6780059
-
Russ Cox authored
Plan 9 and Go's lib9/fmt disagree on whether %#x includes the 0x prefix when printing 0, because ANSI C gave bad advice long ago. Avoiding that case makes binaries compiled on different systems compatible. R=ken2 CC=akumar, golang-dev https://golang.org/cl/6814066
-
Andrew Gerrand authored
This caused more problems than it was worth. Fixes #4301. Fixes #4317. R=golang-dev, minux.ma, rsc CC=golang-dev https://golang.org/cl/6818076
-
Rémy Oudompheng authored
The move to 64-bit ints in 6g made componentgen ineffective. In componentgen, the code already selects which values it can handle. On amd64: benchmark old ns/op new ns/op delta BenchmarkBinaryTree17 9477970000 9582314000 +1.10% BenchmarkFannkuch11 5928750000 5255080000 -11.36% BenchmarkGobDecode 37103040 31451120 -15.23% BenchmarkGobEncode 16042490 16844730 +5.00% BenchmarkGzip 811337400 741373600 -8.62% BenchmarkGunzip 197928700 192844500 -2.57% BenchmarkJSONEncode 224164100 140064200 -37.52% BenchmarkJSONDecode 258346800 231829000 -10.26% BenchmarkMandelbrot200 7561780 7601615 +0.53% BenchmarkParse 12970340 11624360 -10.38% BenchmarkRevcomp 1969917000 1699137000 -13.75% BenchmarkTemplate 296182000 263117400 -11.16% R=nigeltao, dave, daniel.morsing CC=golang-dev https://golang.org/cl/6821052
-
Alex Brainman authored
R=golang-dev, minux.ma CC=golang-dev https://golang.org/cl/6811059
-
Mikio Hara authored
R=golang-dev, r CC=golang-dev https://golang.org/cl/6826044
-
Nigel Tao authored
defined by the PLTE chunk. Such pixels decode to opaque black, which matches what libpng does. Fixes #4319. On my reading, the PNG spec isn't clear whether palette index values outside of those defined by the PLTE chunk is an error, and if not, what to do. Libpng 1.5.3 falls back to opaque black. png_set_PLTE says: /* Changed in libpng-1.2.1 to allocate PNG_MAX_PALETTE_LENGTH instead * of num_palette entries, in case of an invalid PNG file that has * too-large sample values. */ png_ptr->palette = (png_colorp)png_calloc(png_ptr, PNG_MAX_PALETTE_LENGTH * png_sizeof(png_color)); ImageMagick 6.5.7 returns an error: $ convert -version Version: ImageMagick 6.5.7-8 2012-08-17 Q16 http://www.imagemagick.org Copyright: Copyright (C) 1999-2009 ImageMagick Studio LLC Features: OpenMP $ convert packetloss.png x.bmp convert: Invalid colormap index `packetloss.png' @ image.c/SyncImage/3849. R=r CC=golang-dev https://golang.org/cl/6822065
-
- 31 Oct, 2012 14 commits
-
-
Dan Callahan authored
Fixes #4297. R=golang-dev, gri CC=golang-dev https://golang.org/cl/6817045
-
Robert Griesemer authored
R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/6815062
-
Robert Griesemer authored
Fixes #4324. R=r CC=golang-dev https://golang.org/cl/6822062
-
Adam Langley authored
Fixes #1390. R=golang-dev, minux.ma, adg, agl CC=golang-dev https://golang.org/cl/6631044
-
Robert Griesemer authored
Fixes #4314. R=r, rsc CC=golang-dev https://golang.org/cl/6822059
-
Rob Pike authored
Fixes #2874. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6820068
-
Rob Pike authored
R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6812060
-
Rob Pike authored
Fixes build, too. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/6775088
-
Marcel van Lohuizen authored
R=r, mpvl CC=golang-dev https://golang.org/cl/6818067
-
Marcel van Lohuizen authored
Tailorings are represented by removing and reinserting entries from a linked list. After all tailorings are done, missing weights are computed and verified. This implementation assumes that entries that are used in expansions are not reinserted at a later point. This considerably simplifies the implementation. R=r CC=golang-dev https://golang.org/cl/6739052
-
Marcel van Lohuizen authored
incremental comparisons. Instead, processing is now done directly on colElems. As a result, the size of the weights array is now reduced by 75%. Details: - Primary value of type 1 colElem is shifted by 1 bit so that primaries of all types can be compared without shifting. - Quaternary values are now stored in the colElem itself. This is possible as quaternary values other than 0 or maxQuaternary are only needed when other values are ignored. - Simplified processWeights by removing cases that are needed for ICU but not for us (our CJK primary values fit in a single value). R=r CC=golang-dev https://golang.org/cl/6817054
-
Marcel van Lohuizen authored
R=r CC=golang-dev https://golang.org/cl/6727049
-
Ian Lance Taylor authored
I fixed a bug in gccgo that was causing it to only give an error for the first package that was imported and not used. R=golang-dev, r CC=golang-dev https://golang.org/cl/6813058
-
Peter Waller authored
As discussed in the following thread: https://groups.google.com/forum/?fromgroups=#!topic/golang-dev/emeJffxWhVo This is required to enable applications such as `less` to use something other than stdin as the controlling terminal. R=dave, iant CC=bradfitz, golang-dev https://golang.org/cl/6785057
-