aboutsummaryrefslogtreecommitdiff
path: root/src/cmd/compile/internal/ssa/expand_calls.go
diff options
context:
space:
mode:
authorMatthew Dempsky <mdempsky@google.com>2020-12-20 10:36:21 -0800
committerMatthew Dempsky <mdempsky@google.com>2020-12-21 11:19:04 -0800
commitca8e17164e0adf9b3ec8465e361b41c1636a3b93 (patch)
tree4abaee9f7a3108add5040709f90bed4d8b5a4a81 /src/cmd/compile/internal/ssa/expand_calls.go
parentc45313bf451591ab2f7a3ffbbd724bb36d51cba0 (diff)
parent89b44b4e2bb2f88474d6b8476f5c28ea2aea9b28 (diff)
downloadgo-ca8e17164e0adf9b3ec8465e361b41c1636a3b93.tar.gz
go-ca8e17164e0adf9b3ec8465e361b41c1636a3b93.zip
[dev.regabi] all: merge master into dev.regabi
The list of conflicted files for this merge is: src/cmd/compile/internal/gc/inl.go src/cmd/compile/internal/gc/order.go src/cmd/compile/internal/gc/ssa.go test/fixedbugs/issue20415.go test/fixedbugs/issue22822.go test/fixedbugs/issue28079b.go inl.go was updated for changes on dev.regabi: namely that OSELRECV has been removed, and that OSELRECV2 now only uses List, rather than both Left and List. order.go was updated IsAutoTmp is now a standalone function, rather than a method on Node. ssa.go was similarly updated for new APIs involving package ir. The tests are all merging upstream additions for gccgo error messages with changes to cmd/compile's error messages on the dev.regabi branch. Change-Id: Icaaf186d69da791b5994dbb6688ec989caabec42
Diffstat (limited to 'src/cmd/compile/internal/ssa/expand_calls.go')
-rw-r--r--src/cmd/compile/internal/ssa/expand_calls.go8
1 files changed, 1 insertions, 7 deletions
diff --git a/src/cmd/compile/internal/ssa/expand_calls.go b/src/cmd/compile/internal/ssa/expand_calls.go
index 0eba238d81..e1c657d4a4 100644
--- a/src/cmd/compile/internal/ssa/expand_calls.go
+++ b/src/cmd/compile/internal/ssa/expand_calls.go
@@ -196,9 +196,6 @@ func expandCalls(f *Func) {
}
if leaf.Op == OpIData {
leafType = removeTrivialWrapperTypes(leaf.Type)
- if leafType.IsEmptyInterface() {
- leafType = typ.BytePtr
- }
}
aux := selector.Aux
auxInt := selector.AuxInt + offset
@@ -247,12 +244,9 @@ func expandCalls(f *Func) {
// i.e., the struct select is generated and remains in because it is not applied to an actual structure.
// The OpLoad was created to load the single field of the IData
// This case removes that StructSelect.
- if leafType != selector.Type && !selector.Type.IsEmptyInterface() { // empty interface for #42727
+ if leafType != selector.Type {
f.Fatalf("Unexpected Load as selector, leaf=%s, selector=%s\n", leaf.LongString(), selector.LongString())
}
- if selector.Type.IsEmptyInterface() {
- selector.Type = typ.BytePtr
- }
leaf.copyOf(selector)
for _, s := range namedSelects[selector] {
locs = append(locs, f.Names[s.locIndex])