1. 15 Sep, 2016 2 commits
    • Keith Randall's avatar
      cmd/compile: delete lots of the legacy backend · e7cc9c4f
      Keith Randall authored
      It's not everything, but it is a good start.
      
      I tried to make the CL delete only.  goimports forced
      a few exceptions to that rule.
      
      Update #16357
      
      Change-Id: I041925cb2fe68bb7ae1617af862b22c48da649c1
      Reviewed-on: https://go-review.googlesource.com/29168
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarBrad Fitzpatrick <bradfitz@golang.org>
      Reviewed-by: default avatarJosh Bleecher Snyder <josharian@gmail.com>
      Reviewed-by: default avatarMartin Möhrmann <martisch@uos.de>
      e7cc9c4f
    • Keith Randall's avatar
      cmd/compile: redo nil checks · 3134ab3c
      Keith Randall authored
      Get rid of BlockCheck. Josh goaded me into it, and I went
      down a rabbithole making it happen.
      
      NilCheck now panics if the pointer is nil and returns void, as before.
      BlockCheck is gone, and NilCheck is no longer a Control value for
      any block. It just exists (and deadcode knows not to throw it away).
      
      I rewrote the nilcheckelim pass to handle this case.  In particular,
      there can now be multiple NilCheck ops per block.
      
      I moved all of the arch-dependent nil check elimination done as
      part of ssaGenValue into its own proper pass, so we don't have to
      duplicate that code for every architecture.
      
      Making the arch-dependent nil check its own pass means I needed
      to add a bunch of flags to the opcode table so I could write
      the code without arch-dependent ops everywhere.
      
      Change-Id: I419f891ac9b0de313033ff09115c374163416a9f
      Reviewed-on: https://go-review.googlesource.com/29120
      Run-TryBot: Keith Randall <khr@golang.org>
      TryBot-Result: Gobot Gobot <gobot@golang.org>
      Reviewed-by: default avatarDavid Chase <drchase@google.com>
      3134ab3c
  2. 14 Sep, 2016 24 commits
  3. 13 Sep, 2016 14 commits