// compile

// 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.

// Used to leak registers on 8g.

package p

func f(x byte, y uint64) {
	var r byte
	switch y {
	case 1:
		r = x << y // '>>' triggers it too
	case 2:
		r = x << y
	case 3:
		r = x << y
	case 4:
		r = x << y
	case 5:
		r = x << y
	case 6:
		r = x << y
	case 7:
		r = x << y
	case 8:
		r = x << y
	case 9:
		r = x << y
	case 10:
		r = x << y
	}
	_ = r
}
