| // Copyright 2015 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. |
| |
| // cmp_ssa.go tests compare simplification operations. |
| package main |
| |
| import "testing" |
| |
| //go:noinline |
| func eq_ssa(a int64) bool { |
| return 4+a == 10 |
| } |
| |
| //go:noinline |
| func neq_ssa(a int64) bool { |
| return 10 != a+4 |
| } |
| |
| func testCmp(t *testing.T) { |
| if wanted, got := true, eq_ssa(6); wanted != got { |
| t.Errorf("eq_ssa: expected %v, got %v\n", wanted, got) |
| } |
| if wanted, got := false, eq_ssa(7); wanted != got { |
| t.Errorf("eq_ssa: expected %v, got %v\n", wanted, got) |
| } |
| if wanted, got := false, neq_ssa(6); wanted != got { |
| t.Errorf("neq_ssa: expected %v, got %v\n", wanted, got) |
| } |
| if wanted, got := true, neq_ssa(7); wanted != got { |
| t.Errorf("neq_ssa: expected %v, got %v\n", wanted, got) |
| } |
| } |
| |
| func TestCmp(t *testing.T) { |
| testCmp(t) |
| } |