1
0
mirror of https://github.com/golang/go synced 2024-11-16 20:44:52 -07:00
go/test/typeparam
Matthew Dempsky 52016be3f4 cmd/compile: enable more inlining for unified IR
The non-unified frontend had repeated issues with inlining and
generics (#49309, #51909, #52907), which led us to substantially
restrict inlining when shape types were present.

However, these issues are evidently not present in unified IR's
inliner, and the safety restrictions added for the non-unified
frontend can simply be disabled in unified mode.

Fixes #54497.

Change-Id: I8e6ac9f3393c588bfaf14c6452891b9640a9d1bd
Reviewed-on: https://go-review.googlesource.com/c/go/+/424775
Reviewed-by: Cuong Manh Le <cuong.manhle.vn@gmail.com>
Run-TryBot: Matthew Dempsky <mdempsky@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
2022-08-18 17:26:40 +00:00
..
absdiffimp2.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
absdiffimp.dir
aliasimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
chansimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
dedup.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
factimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
gencrawler.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
geninline.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue46461b.dir
issue47514c.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue47775.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue47892.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue47892b.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48094.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48094b.dir
issue48185a.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48185b.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48280.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48306.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48337a.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48337b.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48454.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48462.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48716.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue48962.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49027.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49241.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49246.dir
issue49497.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49524.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49536.dir
issue49659.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49667.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue49893.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50121.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50121b.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50437.dir
issue50481b.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50481c.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50485.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50486.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50552.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50561.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50598.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue50841.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue51219.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue51219b.dir
issue51250a.dir
issue51367.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
issue51423.dir cmd/compile: fix re-export closure 2022-03-11 00:42:08 +00:00
issue51836.dir cmd/compile/internal/importer: key tparams by Package instead of pkgname 2022-03-22 21:38:10 +00:00
issue52117.dir cmd/compile: set correct package for vars/params/results from nested instantiation 2022-04-28 20:14:34 +00:00
issue54302.dir cmd/compile: fix import/export of ODYNAMICDOTTYPE 2022-08-06 15:20:00 +00:00
listimp2.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
listimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
mapimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
mapsimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
mdempsky cmd/compile: fix devirtualization bug with unified IR 2022-08-18 17:26:32 +00:00
mincheck.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
minimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
mutualimp.dir
orderedmapsimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
pairimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
recoverimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
select.dir
setsimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
sliceimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
stringerimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
structinit.dir
valimp.dir test: use dot-relative imports where appropriate 2022-03-24 02:14:15 +00:00
absdiff2.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
absdiff3.go
absdiff.go
absdiffimp2.go
absdiffimp.go
adder.go
aliasimp.go
append.go
boundmethod.go
builtins.go
chans.go
chansimp.go
combine.go
cons.go test/typeparam: fix copyright message 2022-04-21 23:41:49 +00:00
dedup.go
dedup.out
dictionaryCapture-noinline.go
dictionaryCapture.go
dottype.go
dottype.out
double.go
eface.go
equal.go
fact.go
factimp.go
gencrawler.go
gencrawler.out
genembed2.go
genembed.go
geninline.go
graph.go
ifaceconv.go
importtest.go
index2.go
index.go
interfacearg.go
issue23536.go
issue39755.go
issue42758.go cmd/compile: remove duplicate const logic from typecheck 2022-03-07 18:17:40 +00:00
issue44688.go
issue45547.go
issue45722.go
issue45738.go
issue45817.go
issue46461.go
issue46461b.go
issue46472.go
issue46591.go
issue47258.go
issue47272.go
issue47272.out
issue47514.go
issue47514b.go
issue47514c.go
issue47631.go
issue47676.go
issue47684.go
issue47684b.go
issue47684c.go
issue47708.go
issue47710.go
issue47713.go
issue47713.out
issue47716.go
issue47723.go
issue47740.go
issue47740.out
issue47740b.go
issue47775.go
issue47775b.go
issue47797.go
issue47877.go
issue47878.go
issue47892.go
issue47892b.go
issue47896.go
issue47901.go
issue47924.go
issue47925.go
issue47925b.go
issue47925c.go
issue47925d.go
issue47929.go
issue47948.go
issue47966.go
issue48013.go
issue48016.go
issue48030.go
issue48042.go
issue48047.go
issue48049.go
issue48056.go
issue48094.go
issue48094b.go
issue48137.go
issue48185a.go
issue48185b.go
issue48191.go
issue48198.go
issue48225.go
issue48253.go
issue48276a.go
issue48276a.out
issue48276b.go
issue48280.go
issue48306.go
issue48317.go
issue48318.go
issue48337a.go
issue48337a.out
issue48337b.go
issue48344.go
issue48424.go
issue48453.go
issue48454.go
issue48462.go
issue48537.go
issue48538.go
issue48598.go
issue48602.go
issue48604.go
issue48609.go
issue48617.go
issue48645a.go
issue48645a.out
issue48645b.go
issue48711.go
issue48716.go
issue48838.go
issue48962.go
issue49027.go
issue49049.go
issue49241.go
issue49246.go
issue49295.go
issue49309.go cmd/compile: enable more inlining for unified IR 2022-08-18 17:26:40 +00:00
issue49421.go
issue49432.go
issue49497.go
issue49516.go
issue49524.go
issue49536.go
issue49538.go
issue49547.go
issue49611.go
issue49659.go
issue49659b.go
issue49667.go
issue49875.go
issue49893.go
issue50002.go
issue50109.go
issue50109.out
issue50109b.go
issue50121.go
issue50121b.go
issue50147.go
issue50177.go
issue50193.go
issue50193.out
issue50259.go
issue50264.go
issue50317.go
issue50417.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
issue50417b.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
issue50419.go
issue50437.go
issue50481b.go
issue50481c.go
issue50481c.out
issue50485.go
issue50486.go
issue50552.go
issue50561.go
issue50598.go
issue50642.go
issue50690a.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
issue50690a.out
issue50690b.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
issue50690b.out
issue50690c.go go/types, types2: disable field accesses through type parameters 2022-03-09 21:26:42 +00:00
issue50690c.out
issue50833.go
issue50841.go
issue50993.go
issue51219.go
issue51219.out
issue51219b.go
issue51232.go go/types, types2: disable inference for type instances 2022-03-07 21:18:15 +00:00
issue51233.go go/types, types2: disable inference for type instances 2022-03-07 21:18:15 +00:00
issue51236.go
issue51245.go
issue51250a.go
issue51303.go
issue51303.out
issue51355.go
issue51367.go
issue51423.go cmd/compile: fix re-export closure 2022-03-11 00:42:08 +00:00
issue51521.go test: add test case for #51521 2022-03-07 14:07:18 +00:00
issue51522a.go cmd/compile: fix transform of OEQ/ONE when one arg is a type param 2022-03-10 18:50:50 +00:00
issue51522b.go cmd/compile: fix expression switches using type parameters 2022-03-10 19:30:33 +00:00
issue51700.go cmd/compile: always write fun[0] in incomplete itab 2022-04-12 17:06:19 +00:00
issue51733.go cmd/compile: pointers to notinheap types need their own shape 2022-03-18 19:22:30 +00:00
issue51765.go cmd/compile: replace Type.OrigSym with Type.OrigType 2022-03-21 21:57:24 +00:00
issue51832.go cmd/compile: catch pointless recursion on function types 2022-05-24 20:35:40 +00:00
issue51836.go cmd/compile/internal/importer: key tparams by Package instead of pkgname 2022-03-22 21:38:10 +00:00
issue51840.go test: add test case for #51840 2022-05-10 19:40:04 +00:00
issue51909.go cmd/compile: don't inline fn with shape params, but passed no shape arg 2022-05-14 00:29:30 +00:00
issue51925.go cmd/compile: don't inline fn with shape params, but passed no shape arg 2022-05-14 00:29:30 +00:00
issue52026.go cmd/compile: use dictionary to convert type to shaped interface type 2022-05-03 21:36:22 +00:00
issue52117.go cmd/compile: set correct package for vars/params/results from nested instantiation 2022-04-28 20:14:34 +00:00
issue52124.go test: extend issue52124.go to also test #52139 2022-04-07 19:16:46 +00:00
issue52228.go cmd/compile: always write fun[0] in incomplete itab 2022-04-12 17:06:19 +00:00
issue52241.go cmd/compile: allow exporting .rcvr ident 2022-05-06 21:07:37 +00:00
issue53254.go cmd/compile: don't use dictionary convert to shaped empty interface 2022-06-22 22:14:02 +00:00
issue53390.go cmd/compile: skip substituting closures in unsafe builtins arguments 2022-06-18 00:48:50 +00:00
issue53406.go cmd/compile: fix assert condition in generic method call 2022-06-22 16:25:18 +00:00
issue53419.go test: add regress test for #53419 2022-06-17 22:44:22 +00:00
issue53477.go test: add regress test for #53477 2022-06-21 15:00:37 +00:00
issue53762.go cmd/compile: fix type assert in dict pass 2022-07-13 16:06:45 +00:00
issue54135.go test: improve generic type assertion test 2022-08-01 20:44:41 +00:00
issue54302.go cmd/compile: fix import/export of ODYNAMICDOTTYPE 2022-08-06 15:20:00 +00:00
issue54497.go cmd/compile: enable more inlining for unified IR 2022-08-18 17:26:40 +00:00
issue376214.go
list2.go
list.go
listimp2.go
listimp.go
lockable.go
map.go
mapimp.go
maps.go
mapsimp.go
metrics.go
min.go
mincheck.go
minimp.go
mutualimp.go
nested.go cmd/compile/internal/noder: shape-based stenciling for unified IR 2022-08-18 13:16:21 +00:00
nested.out
ordered.go
orderedmap.go
orderedmapsimp.go
pair.go
pairimp.go
pragma.go
recoverimp.go
recoverimp.out
select.go
sets.go
setsimp.go
settable.go
shape1.go
shape1.out
sliceimp.go
slices.go
smallest.go
smoketest.go
stringable.go
stringer.go
stringerimp.go
struct.go
structinit.go
subdict.go
sum.go
tparam1.go
typelist.go
typeswitch1.go
typeswitch1.out
typeswitch2.go
typeswitch2.out
typeswitch3.go
typeswitch3.out
typeswitch4.go
typeswitch4.out
typeswitch5.go
typeswitch5.out
typeswitch6.go
typeswitch6.out
typeswitch7.go
typeswitch7.out
valimp.go
value.go