go/test/abi
Than McIntosh cfac62a1cc cmd/compile: fix bug in defer wrapping
The defer wrapping feature added to the compiler's "order" phase
creates temporaries into which it copies defer arguments. If one of
these temps is large enough that we place it into the defer closure by
address (as opposed to by value), then the temp in question can't be
reused later on in the order phase, nor do we want a VARKILL
annotation for it at the end of the current block scope.

Test written by Cherry.

Updates #40724.

Change-Id: Iec7efd87ec5a3e3d7de41cdcc7f39c093ed1e815
Reviewed-on: https://go-review.googlesource.com/c/go/+/312869
Trust: Than McIntosh <thanm@google.com>
Run-TryBot: Than McIntosh <thanm@google.com>
TryBot-Result: Go Bot <gobot@golang.org>
Reviewed-by: Cherry Zhang <cherryyz@google.com>
2021-04-23 01:16:19 +00:00
..
bad_internal_offsets.go cmd/compile: fix broken type+offset calc for register args 2021-03-09 18:44:23 +00:00
bad_select_crash.go test/abi: reenable test on windows 2021-04-16 13:38:02 +00:00
convF_criteria.go cmd/compile: fix buglet in walk convert phase relating to convF32/64 2021-04-08 19:58:50 +00:00
convF_criteria.out cmd/compile: fix buglet in walk convert phase relating to convF32/64 2021-04-08 19:58:50 +00:00
convT64_criteria.go cmd/compile: fix buglet in walk convert phase relating to convT64 2021-04-08 17:44:21 +00:00
convT64_criteria.out cmd/compile: fix buglet in walk convert phase relating to convT64 2021-04-08 17:44:21 +00:00
defer_aggregate.go cmd/compile: deduplicate OpArg's across types 2021-03-31 20:21:57 +00:00
defer_recover_results.go cmd/compile: load results into registers on open defer return path 2021-04-06 20:22:15 +00:00
double_nested_addressed_struct.go cmd/compile: return (and receive) medium-large results 2021-03-04 23:09:24 +00:00
double_nested_struct.go cmd/compile: fix OpArg decomposer for registers in expandCalls 2021-03-09 18:43:58 +00:00
f_ret_z_not.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
f_ret_z_not.out cmd/compile: fixed which-result confusion in presence of 0-width types 2021-02-27 18:38:31 +00:00
fibish2.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
fibish2.out cmd/compile: test register ABI for method, interface, closure calls 2021-03-12 21:18:15 +00:00
fibish_closure.go cmd/compile: test register ABI for method, interface, closure calls 2021-03-12 21:18:15 +00:00
fibish_closure.out cmd/compile: test register ABI for method, interface, closure calls 2021-03-12 21:18:15 +00:00
fibish.go cmd/compile: implement simple register results 2021-03-04 19:45:11 +00:00
fibish.out cmd/compile: implement simple register results 2021-03-04 19:45:11 +00:00
fuzz_trailing_zero_field.go cmd/compile: fix register/offset calculation for trailing empty field case. 2021-04-01 15:50:43 +00:00
idata.go cmd/compile: add "surprised by IData of Arg" case for register args 2021-04-05 20:11:08 +00:00
idata.out cmd/compile: add "surprised by IData of Arg" case for register args 2021-04-05 20:11:08 +00:00
leaf2.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
leaf.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
many_int_input.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
many_int_input.out cmd/compile: register abi, morestack work and mole whacking 2021-03-04 16:19:12 +00:00
many_intstar_input.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
many_intstar_input.out cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
map.go cmd/compile: preserve pointerness when creating map key temp 2021-04-20 14:30:03 +00:00
methods.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
methods.out cmd/compile: test register ABI for method, interface, closure calls 2021-03-12 21:18:15 +00:00
more_intstar_input.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
more_intstar_input.out cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
named_results.go cmd/compile: implement too-big-to-SSA struct passing in registers 2021-03-04 20:18:16 +00:00
named_results.out cmd/compile: implement too-big-to-SSA struct passing in registers 2021-03-04 20:18:16 +00:00
named_return_stuff.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
named_return_stuff.out cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
open_defer_1.go cmd/compile: fix open defer of method call 2021-03-16 19:23:36 +00:00
part_live_2.go cmd/compile: pre-spill pointers in aggregate-typed register args 2021-04-07 03:42:11 +00:00
part_live.go cmd/compile: pre-spill pointers in aggregate-typed register args 2021-04-07 03:42:11 +00:00
result_live.go test: add test for CL 310589 2021-04-19 14:51:24 +00:00
return_stuff.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
return_stuff.out cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
s_sif_sif.go cmd/compile: fix failure to communicate between ABIinfo producer&consumer 2021-03-09 18:45:05 +00:00
spills3.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
spills4.go cmd/compile: (fixed) spill output parameters passed in registers as autos 2021-03-16 19:22:44 +00:00
store_reg_args.go cmd/compile: avoid generating duplicated in-register Arg 2021-03-30 22:10:19 +00:00
struct_3_string_input.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
struct_3_string_input.out cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
struct_lower_1.go cmd/compile: fix OpArg decomposer for registers in expandCalls 2021-03-09 18:43:58 +00:00
struct_lower_1.out cmd/compile: fix OpArg decomposer for registers in expandCalls 2021-03-09 18:43:58 +00:00
too_big_to_ssa.go cmd/compile: fix OpArg decomposer for registers in expandCalls 2021-03-09 18:43:58 +00:00
too_big_to_ssa.out cmd/compile: return (and receive) medium-large results 2021-03-04 23:09:24 +00:00
uglyfib.go cmd/compile: add register abi tests 2021-03-04 23:07:50 +00:00
uglyfib.out cmd/compile: fix pointer maps for morestack 2021-03-04 16:21:10 +00:00
wrapdefer_largetmp.go cmd/compile: fix bug in defer wrapping 2021-04-23 01:16:19 +00:00
wrapdefer_largetmp.out cmd/compile: fix bug in defer wrapping 2021-04-23 01:16:19 +00:00
zombie_struct_select.go cmd/compile: mark unused values as invalid to prevent problems in expandCalls 2021-04-02 17:58:59 +00:00