From f48fa643f1d8519da42faad1f838d4b2bd035269 Mon Sep 17 00:00:00 2001 From: Matthew Dempsky Date: Sat, 23 Jul 2022 00:00:49 -0700 Subject: [PATCH] [dev.unified] cmd/compile: remove obsolete RTTI wiring Comparisons between interface-typed and non-interface-typed expressions no longer happen within Unified IR since CL 415577, so this code path is no longer needed. Change-Id: I075dfd1e6c34799f32766ed052eab0710bc6cbd5 Reviewed-on: https://go-review.googlesource.com/c/go/+/419454 Reviewed-by: David Chase Run-TryBot: Matthew Dempsky TryBot-Result: Gopher Robot --- src/cmd/compile/internal/noder/reader.go | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/src/cmd/compile/internal/noder/reader.go b/src/cmd/compile/internal/noder/reader.go index d7ec9f2ebb..fbbce7e80f 100644 --- a/src/cmd/compile/internal/noder/reader.go +++ b/src/cmd/compile/internal/noder/reader.go @@ -1786,19 +1786,7 @@ func (r *reader) expr() (res ir.Node) { case ir.OANDAND, ir.OOROR: return typecheck.Expr(ir.NewLogicalExpr(pos, op, x, y)) } - n := typecheck.Expr(ir.NewBinaryExpr(pos, op, x, y)) - switch n.Op() { - case ir.OEQ, ir.ONE: - n := n.(*ir.BinaryExpr) - if n.X.Type().IsInterface() != n.Y.Type().IsInterface() { - typ := n.X.Type() - if typ.IsInterface() { - typ = n.Y.Type() - } - n.RType = reflectdata.TypePtrAt(pos, typ) - } - } - return n + return typecheck.Expr(ir.NewBinaryExpr(pos, op, x, y)) case exprCall: fun := r.expr() -- 2.50.0