1
0
mirror of https://github.com/golang/go synced 2024-11-24 23:57:57 -07:00
go/test
Jamie Gennis fff732ea2c 6g,8g: make constant propagation inlining-friendly.
This changes makes constant propagation compare 'from' values using node
pointers rather than symbol names when checking to see whether a set
operation is redundant. When a function is inlined multiple times in a
calling function its arguments will share symbol names even though the values
are different. Prior to this fix the bug409 test would hit a case with 6g
where an LEAQ instruction was incorrectly eliminated from the second inlined
function call. 8g appears to have had the same bug, but the test did not fail
there.

R=golang-dev, rsc
CC=golang-dev
https://golang.org/cl/5646044
2012-02-08 10:25:13 -05:00
..
bench runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
bugs gc: undo most of 'fix infinite recursion for embedded interfaces' 2012-01-20 17:14:09 -05:00
chan runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
dwarf test: clear execute bit from source file 2011-11-03 10:26:33 +09:00
fixedbugs 6g,8g: make constant propagation inlining-friendly. 2012-02-08 10:25:13 -05:00
interface test: don't use package main for files without a main function 2012-02-03 11:43:24 -08:00
ken test: test slice beyond len 2012-02-03 06:29:30 -08:00
syntax test: match gccgo error messages 2012-01-26 23:06:47 -08:00
64bit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
235.go single argument panic 2010-03-30 10:34:57 -07:00
alias1.go test/alias.go: additional tests 2011-10-26 15:27:47 -07:00
alias.go utf8.String: move to exp/utf8string.String 2012-01-17 14:21:50 -08:00
append.go test: test append with two different named types with same element type 2012-02-01 15:24:15 -08:00
args.go move things out of sys into os and runtime 2009-05-08 15:21:41 -07:00
assign1.go test: Match gccgo error messages. 2010-09-10 19:12:10 -07:00
assign.go allow copy of struct containing unexported fields 2011-11-15 12:20:59 -05:00
bigalg.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
bigmap.go runtime: allow large map values 2010-05-19 12:57:47 -07:00
blank1.go test: explicitly use variables to avoid gccgo "not used" error 2012-01-22 11:50:45 -08:00
blank.go gc: fix another blank bug 2011-12-09 11:59:21 -05:00
chancap.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
char_lit1.go test: Match gccgo error messages. 2010-08-31 11:43:52 -07:00
char_lit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
closedchan.go test: make closedchan.go exit with failure if something fails 2011-11-04 14:12:35 -07:00
closure.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
cmp6.go gc: implement == on structs and arrays 2011-12-12 22:22:09 -05:00
cmp.go gc: inlining, allow empty bodies, fix _ arguments. 2011-12-15 17:50:59 +01:00
cmplx.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide.c delete float, complex - code changes 2011-01-19 23:09:00 -05:00
cmplxdivide.go renaming_4: gofix -r everything/but/src/pkg 2011-11-08 15:43:02 -08:00
complit1.go test: match gccgo error messages 2012-01-26 23:06:47 -08:00
complit.go gc: remove type elision in struct literals 2011-12-05 14:22:41 -05:00
compos.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
const1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
const2.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
const3.go gc: another shift bug 2010-12-13 13:42:51 -05:00
const.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
convert1.go test: match gccgo error messages 2012-01-26 23:06:47 -08:00
convert3.go test: don't assign address of array to slice. 2010-08-31 07:34:01 -07:00
convert.go fix tree for reflect rename 2011-04-25 13:39:36 -04:00
convlit1.go more 6g reorg; checkpoint. 2009-08-03 11:58:52 -07:00
convlit.go allow direct conversion between string and named []byte, []rune 2011-11-22 12:30:02 -05:00
copy.go test copy([]byte, string) 2010-10-26 08:36:23 -07:00
crlf.go gc: implement and test \r in raw strings 2011-12-15 10:47:09 -05:00
ddd1.go gc: use inferred type rather than original one when reporting non-assignability. 2011-12-14 17:34:35 +01:00
ddd2.go gc: add ... T, rework plain ... 2010-02-01 00:25:59 -08:00
ddd3.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
ddd.go gc: ... bug 2010-10-06 11:12:30 -04:00
decl.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
declbad.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
defer.go ... changes 2010-09-24 11:55:48 -04:00
deferprint.go test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
deferprint.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
divide.go 6g, 8g: divide corner case 2011-07-28 14:18:22 -04:00
empty.go
env.go non-pkg: gofix -r error -force=error 2011-11-01 22:06:05 -04:00
eof1.go test: don't use package main for files without a main function 2012-02-03 11:43:24 -08:00
eof.go gc: insert semicolon at EOF if needed 2010-09-28 10:35:02 -04:00
errchk errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
escape2.go gc: avoid false positives when using scalar struct fields. 2012-01-12 12:08:40 +01:00
escape3.go gc: zero stack-allocated slice backing arrays 2011-09-02 15:11:28 -04:00
escape.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
float_lit.go arm: enable all tests 2010-10-25 21:25:13 -07:00
floatcmp.go more soft float support. passes several basic tests 2010-07-20 15:53:16 +03:00
for.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func1.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
func2.go non-pkg: gofix -r error -force=error 2011-11-01 22:06:05 -04:00
func3.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
func4.go test: explicitly use variables to avoid gccgo "not used" error 2012-01-22 11:50:45 -08:00
func5.go single argument panic 2010-03-30 10:34:57 -07:00
func6.go gc: fix func syntax error 2011-04-13 22:48:21 -04:00
func7.go gc: fix order of operations for f() < g(). 2011-04-26 00:57:03 -04:00
func8.go gc: fix order of evaluation 2012-01-25 17:53:50 -05:00
func.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
gc1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
gc2.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
gc.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
golden.out gc: undo most of 'fix infinite recursion for embedded interfaces' 2012-01-20 17:14:09 -05:00
goprint.go test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
goprint.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
goto.go test: match gccgo error messages for goto.go and bug344.go 2011-09-20 14:45:54 -07:00
hashmap.go build: clear execute bit from Go files 2011-09-05 07:48:42 -04:00
helloworld.go test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
helloworld.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
if.go go: require { } around else block 2011-07-14 17:15:52 -04:00
import1.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
import2.go gc: fix chan <- chan precedence. 2010-01-26 10:40:28 -08:00
import3.go gc: fix chan <- chan precedence. 2010-01-26 10:40:28 -08:00
import4.go gc: fix imported and not used message - show path 2010-03-03 17:23:47 -08:00
import5.go gc: diagnose \ in import path 2012-01-31 17:29:59 -05:00
import.go test: error-related fixes 2011-10-27 19:41:39 -07:00
index.go test: fix NaCl build 2010-09-19 23:28:32 -04:00
indirect1.go test: explicitly use variables to avoid gccgo "not used" error 2012-01-22 11:50:45 -08:00
indirect.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
init1.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
init.go test: match gccgo error messages for init.go 2011-03-26 11:24:02 -07:00
initcomma.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
initialize.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
initializerr.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
initsyscall.go use new time API 2011-11-30 12:01:46 -05:00
int_lit.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
intcvt.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
iota.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
label1.go test: match gccgo error messages for label.go and label1.go. 2011-03-25 10:36:46 -07:00
label.go test: match gccgo error messages for label.go and label1.go. 2011-03-25 10:36:46 -07:00
linkx.go 5l, 6l, 8l: implement -X flag 2012-02-07 16:46:33 -05:00
literal.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
malloc1.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
mallocfin.go runtime: faster finalizers 2011-10-06 18:42:51 +03:00
mallocrand.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
mallocrep1.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
mallocrep.go runtime: delete UpdateMemStats, replace with ReadMemStats(&stats). 2012-02-06 19:16:26 +01:00
map1.go gc: implement == on structs and arrays 2011-12-12 22:22:09 -05:00
map.go test: make map nan timing test more robust 2012-02-02 11:49:28 -08:00
method1.go test: s/float/float64/ 2011-01-21 08:37:58 -08:00
method2.go test: match gccgo error messages 2011-09-21 17:25:48 -07:00
method3.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
method4.go test: test method expressions with parameters, and with import 2012-02-03 16:38:59 -08:00
method4a.go test: test method expressions with parameters, and with import 2012-02-03 16:38:59 -08:00
method.go gc, spec, tests: no auto-indirect of pointer to interface value 2010-09-30 14:59:41 -04:00
named1.go gc: use inferred type rather than original one when reporting non-assignability. 2011-12-14 17:34:35 +01:00
named.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
nil.go gofix -r mapdelete 2011-10-18 09:56:34 -04:00
nilptr.go test: make array smaller in nilptr test 2011-12-07 15:00:44 -05:00
nul1.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
parentype.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
peano.go test: change several tests to not print 2012-01-18 14:31:31 -08:00
printbig.go test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
printbig.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
range.go cgo, goyacc, go/build, html, http, path, path/filepath, testing/quick, test: use rune 2011-10-25 22:20:02 -07:00
recover1.go test for panic and recover 2010-03-31 11:47:09 -07:00
recover2.go gc: implement == on structs and arrays 2011-12-12 22:22:09 -05:00
recover3.go non-pkg: gofix -r error -force=error 2011-11-01 22:06:05 -04:00
recover.go runtime: turn run time errors checks into panics 2010-04-01 22:31:27 -07:00
rename1.go errchk: allow multiple patterns 2011-08-16 11:14:26 -04:00
rename.go delete all uses of panicln by rewriting them using panic or, 2010-03-24 16:46:53 -07:00
reorder2.go gc: fix order of evaluation 2012-01-25 17:53:50 -05:00
reorder.go gc: stricter multiple assignment + test 2011-10-13 15:46:39 -04:00
run build: use cmd/dist 2012-02-04 00:54:08 -05:00
rune.go test: don't use package main for files without a main function 2012-02-03 11:43:24 -08:00
runtime.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
shift1.go test: match gccgo error messages 2011-09-21 17:25:48 -07:00
shift2.go gc: implement new shift rules 2011-05-31 15:05:40 -04:00
sieve.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
sigchld.go test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
sigchld.out test: split golden.out into expected output per test 2012-01-18 16:12:24 -08:00
simassign.go single argument panic 2010-03-30 10:34:57 -07:00
sinit.go gc: make static initialization more static 2011-08-31 07:37:14 -04:00
sizeof.go gc: unsafe.Alignof, unsafe.Offsetof, unsafe.Sizeof now return uintptr 2011-06-17 16:12:14 -04:00
solitaire.go cgo, goyacc, go/build, html, http, path, path/filepath, testing/quick, test: use rune 2011-10-25 22:20:02 -07:00
stack.go 5l, 8l: pass stack frame size to morestack when needed 2011-02-01 18:34:41 -05:00
string_lit.go cgo, goyacc, go/build, html, http, path, path/filepath, testing/quick, test: use rune 2011-10-25 22:20:02 -07:00
stringrange.go renaming_4: gofix -r everything/but/src/pkg 2011-11-08 15:43:02 -08:00
struct0.go gc: fix zero-length struct eval 2011-09-05 15:31:22 -04:00
switch1.go test: remove semiocolons. 2010-09-04 10:36:13 +10:00
switch3.go test: match gccgo error messages 2012-01-26 23:06:47 -08:00
switch.go gc: remove func, map compare 2011-11-13 22:58:08 -05:00
test0.go delete float, complex - code changes 2011-01-19 23:09:00 -05:00
turing.go test: change several tests to not print 2012-01-18 14:31:31 -08:00
typeswitch1.go single argument panic 2010-03-30 10:34:57 -07:00
typeswitch2.go test: match gccgo error messages 2012-01-26 23:06:47 -08:00
typeswitch3.go cmd/gc: disallow switch _ := v.(type) 2012-02-06 12:35:29 -05:00
typeswitch.go gc: remove func, map compare 2011-11-13 22:58:08 -05:00
undef.go test: Match gccgo error messages. 2010-09-10 12:44:37 -07:00
utf.go renaming_4: gofix -r everything/but/src/pkg 2011-11-08 15:43:02 -08:00
varerr.go test: Match gccgo error messages. 2010-09-10 12:45:46 -07:00
varinit.go single argument panic 2010-03-30 10:34:57 -07:00
zerodivide.go non-pkg: gofix -r error -force=error 2011-11-01 22:06:05 -04:00