]> Cypherpunks repositories - gostls13.git/commit
cmd/compile/internal/syntax: replace inlined statement lists with syntax.BlockStmt
authorRobert Griesemer <gri@golang.org>
Wed, 22 Mar 2017 05:23:15 +0000 (22:23 -0700)
committerRobert Griesemer <gri@golang.org>
Wed, 22 Mar 2017 22:37:08 +0000 (22:37 +0000)
commitb5f81eae17b68c9a34d23dcf4669e3d879781b35
tree3a8827c045d3d219bfd306318429d834ca575887
parente0329248d5cda9a6a6c1492a2fdeeacd982afc9c
cmd/compile/internal/syntax: replace inlined statement lists with syntax.BlockStmt

This simplifies the code and removes a premature optimization.
It increases the amount of allocated syntax.Node space by ~0.4%
for parsing all of std lib, which is negligible.

Before the change (best of 5 runs):

  $ go test -run StdLib -fast
  parsed 1517022 lines (3394 files) in 793.487886ms (1911840 lines/s)
  allocated 387.086Mb (267B/line, 487.828Mb/s)

After the change (best of 5 runs):

  $ go test -run StdLib -fast
  parsed 1516911 lines (3392 files) in 805.028655ms (1884294 lines/s)
  allocated 388.466Mb (268B/line, 482.549Mb/s)

Change-Id: Id19d6210fdc62393862ba3b04913352d95c599be
Reviewed-on: https://go-review.googlesource.com/38439
Run-TryBot: Robert Griesemer <gri@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Matthew Dempsky <mdempsky@google.com>
src/cmd/compile/internal/gc/noder.go
src/cmd/compile/internal/syntax/nodes.go
src/cmd/compile/internal/syntax/nodes_test.go
src/cmd/compile/internal/syntax/parser.go
src/cmd/compile/internal/syntax/parser_test.go
src/cmd/compile/internal/syntax/printer.go