From: Michael Hudson-Doyle Date: Mon, 21 Mar 2016 06:27:35 +0000 (+1300) Subject: cmd/link: delete unreachable hash collision check X-Git-Tag: go1.7beta1~1195 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=70ef564e795dea06d37e5233fcf3182b231c31f0;p=gostls13.git cmd/link: delete unreachable hash collision check This expression in readsym: dup != nil && len(dup.P) > 0 && strings.HasPrefix(s.Name, "gclocals·") can never be true: if dup != nil, then s.Name is ".dup" (and this is not new: the same broken logic is present in 1.4, at least). Delete the whole block. Change-Id: I33b14d9a82b292116d6fd79d22b38e3842501317 Reviewed-on: https://go-review.googlesource.com/20970 Run-TryBot: Michael Hudson-Doyle TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick --- diff --git a/src/cmd/link/internal/ld/objfile.go b/src/cmd/link/internal/ld/objfile.go index 130347e7fd..6bf3d73a41 100644 --- a/src/cmd/link/internal/ld/objfile.go +++ b/src/cmd/link/internal/ld/objfile.go @@ -255,14 +255,6 @@ overwrite: } } - if len(s.P) > 0 && dup != nil && len(dup.P) > 0 && strings.HasPrefix(s.Name, "gclocals·") { - // content-addressed garbage collection liveness bitmap symbol. - // double check for hash collisions. - if !bytes.Equal(s.P, dup.P) { - log.Fatalf("dupok hash collision for %s in %s and %s", s.Name, s.File, pn) - } - } - if s.Type == obj.STEXT { s.Args = rdint32(f) s.Locals = rdint32(f)