Codegen test coverage

One of GoLang optimization that I named "cmd/compile: avoid mapaccess at m[k]=append(m[k].."  (Issue 24364 and CL 100838) removes excessive runtime.mapaccess call. I provided usual tests and benchmarks that guarantee that the map still works as expected and performance has been improved. And I had to generate ASM code manually to make sure that CALL runtime.mapaccess is … Continue reading Codegen test coverage

Art of Hacking Golang compiler

UPDATE 03/19/2018 CL and are committed and will be a part of Go 1.11. UPDATE 06/25/2018 Found a bug Fixed by CL What? map and append When I just started to learn Golang, found this example: You may see two likes[l] that are obviously not free if final machine code is doing it. There is no … Continue reading Art of Hacking Golang compiler

go vet: Printf family check

What? I use golang with VSCode IDE. One of the features that I enabled is on-fly static code analysis. It uses standard golang feature Command Vet This article is about interesting Printf family check behaviour. If write a code go vet reports "Missing argument for Errorf("%v"): format reads arg2, have on". go vet … Continue reading go vet: Printf family check