cmd/gc: implement revised rule for shifts in equality.
cmd/gc: implement revised rule for shifts in equality.

R=rsc, daniel.morsing
CC=golang-dev
https://codereview.appspot.com/7613046

webfd/go-zh,scirelli/scirelli-go,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,webfd/go-zh,scirelli/scirelli-go,glycerine/jeaten-go-arrayof-structof,rdp/rogerpack2005-golang,glycerine/jeaten-go-arrayof-structof,rdp/rogerpack2005-golang,mhennings/marcohennings-go,bryanxu/go-zh,bryanxu/go-zh,webfd/go-zh,mhennings/marcohennings-go,rdp/rogerpack2005-golang,rdp/rogerpack2005-golang,rdp/rogerpack2005-golang,mhennings/marcohennings-go,bryanxu/go-zh,scirelli/scirelli-go,webfd/go-zh,sanjosh/sanjos100-tipc,webfd/go-zh,d0f/go-zh,webfd/go-zh,d0f/go-zh,webfd/go-zh,mhennings/marcohennings-go,glycerine/jeaten-go-arrayof-structof,bryanxu/go-zh,scirelli/scirelli-go,bryanxu/go-zh,mhennings/marcohennings-go,mhennings/marcohennings-go,scirelli/scirelli-go,rdp/rogerpack2005-golang,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,sanjosh/sanjos100-tipc,sanjosh/sanjos100-tipc,d0f/go-zh,d0f/go-zh,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,glycerine/jeaten-go-arrayof-structof,scirelli/scirelli-go,mhennings/marcohennings-go,scirelli/scirelli-go,mhennings/marcohennings-go,bryanxu/go-zh,webfd/go-zh,sanjosh/sanjos100-tipc,bryanxu/go-zh,scirelli/scirelli-go,rdp/rogerpack2005-golang,sanjosh/sanjos100-tipc,sanjosh/sanjos100-tipc,bryanxu/go-zh,sanjosh/sanjos100-tipc,rdp/rogerpack2005-golang,glycerine/jeaten-go-arrayof-structof,d0f/go-zh,sanjosh/sanjos100-tipc