1// run 2 3// Copyright 2017 The Go Authors. All rights reserved. 4// Use of this source code is governed by a BSD-style 5// license that can be found in the LICENSE file. 6 7package main 8 9const lim = 0x80000000 10 11//go:noinline 12func eq(x uint32) { 13 if x == lim { 14 return 15 } 16 panic("x == lim returned false") 17} 18 19//go:noinline 20func neq(x uint32) { 21 if x != lim { 22 panic("x != lim returned true") 23 } 24} 25 26//go:noinline 27func gt(x uint32) { 28 if x > lim { 29 return 30 } 31 panic("x > lim returned false") 32} 33 34//go:noinline 35func gte(x uint32) { 36 if x >= lim { 37 return 38 } 39 panic("x >= lim returned false") 40} 41 42//go:noinline 43func lt(x uint32) { 44 if x < lim { 45 panic("x < lim returned true") 46 } 47} 48 49//go:noinline 50func lte(x uint32) { 51 if x <= lim { 52 panic("x <= lim returned true") 53 } 54} 55 56func main() { 57 eq(lim) 58 neq(lim) 59 gt(lim+1) 60 gte(lim+1) 61 lt(lim+1) 62 lte(lim+1) 63} 64