Commit 578f24d5 authored by Rémy Oudompheng's avatar Rémy Oudompheng

test: add rotate.go and fixedbugs/bug313

Update #4139.

R=golang-dev, iant
CC=golang-dev
https://golang.org/cl/7094047
parent 7f0449a1
// errchk $G -e $D/$F.dir/[ab].go
// NOTE: This test is not run by 'run.go' and so not run by all.bash.
// To run this test you must use the ./run shell script.
// errorcheckdir
// Copyright 2010 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
......
// $G $D/$F.go && $L $F.$A &&
// ./$A.out >tmp.go && $G tmp.go && $L -o $A.out1 tmp.$A && ./$A.out1
// rm -f tmp.go $A.out1
// skip
// NOTE: This test is not run by 'run.go' and so not run by all.bash.
// To run this test you must use the ./run shell script.
// NOTE: the actual tests to run are rotate[0123].go
// Copyright 2012 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
......@@ -12,8 +9,8 @@
// Generate test of shift and rotate by constants.
// The output is compiled and run.
//
// The output takes around a gigabyte of memory to compile, link, and run
// but it is only done during ./run, not in normal builds using run.go.
// The integer type depends on the value of mode (rotate direction,
// signedness).
package main
......@@ -37,9 +34,7 @@ func main() {
typ := fmt.Sprintf("int%d", 1<<logBits)
fmt.Fprint(b, strings.Replace(checkFunc, "XXX", typ, -1))
fmt.Fprint(b, strings.Replace(checkFunc, "XXX", "u"+typ, -1))
for mode := 0; mode < 1<<2; mode++ {
gentest(b, 1<<logBits, mode&1 != 0, mode&2 != 0)
}
gentest(b, 1<<logBits, mode&1 != 0, mode&2 != 0)
}
}
......
// runoutput ./rotate.go
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Generate test of bit rotations.
// The output is compiled and run.
package main
const mode = 0
// runoutput ./rotate.go
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Generate test of bit rotations.
// The output is compiled and run.
package main
const mode = 1
// runoutput ./rotate.go
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Generate test of bit rotations.
// The output is compiled and run.
package main
const mode = 2
// runoutput ./rotate.go
// Copyright 2013 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Generate test of bit rotations.
// The output is compiled and run.
package main
const mode = 3
......@@ -724,12 +724,10 @@ func (t *test) wantedErrors(file, short string) (errs []wantedError) {
var skipOkay = map[string]bool{
"linkx.go": true,
"rotate.go": true,
"sigchld.go": true,
"sinit.go": true,
"fixedbugs/bug248.go": true, // combines errorcheckdir and rundir in the same dir.
"fixedbugs/bug302.go": true, // tests both .$O and .a imports.
"fixedbugs/bug313.go": true, // errorcheckdir with failures in the middle.
"fixedbugs/bug345.go": true, // needs the appropriate flags in gc invocation.
"fixedbugs/bug369.go": true, // needs compiler flags.
"fixedbugs/bug385_32.go": true, // arch-specific errors.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment