blob: 8d92c3fba4bf8e92a44b7e19ec71e06a209bc6f2 [file] [log] [blame]
Nick Lewycky1f40f382009-09-20 00:04:02 +00001; RUN: llvm-as < %s | llvm-dis | FileCheck %s
2
3@X = external global i8
4@Y = external global i8
5@Z = external global i8
6
Nick Lewycky241fa242009-09-20 07:00:24 +00007@A = global i1 add (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
8; CHECK: @A = global i1 xor (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z)) ; <i1*> [#uses=0]
9@B = global i1 sub (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
10; CHECK: @B = global i1 xor (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z)) ; <i1*> [#uses=0]
11@C = global i1 mul (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
12; CHECK: @C = global i1 and (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z)) ; <i1*> [#uses=0]
Nick Lewycky1f40f382009-09-20 00:04:02 +000013
Nick Lewycky241fa242009-09-20 07:00:24 +000014@D = global i1 sdiv (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
15; CHECK: @D = global i1 icmp ult (i8* @X, i8* @Y) ; <i1*> [#uses=0]
16@E = global i1 udiv (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
17; CHECK: @E = global i1 icmp ult (i8* @X, i8* @Y) ; <i1*> [#uses=0]
18@F = global i1 srem (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
19; CHECK: @F = global i1 false ; <i1*> [#uses=0]
20@G = global i1 urem (i1 icmp ult (i8* @X, i8* @Y), i1 icmp ult (i8* @X, i8* @Z))
21; CHECK: @G = global i1 false ; <i1*> [#uses=0]
Nick Lewyckyb4f150b2009-09-20 05:48:50 +000022
Nick Lewycky241fa242009-09-20 07:00:24 +000023@H = global i1 icmp ule (i32* bitcast (i8* @X to i32*), i32* bitcast (i8* @Y to i32*))
24; CHECK: @H = global i1 icmp ule (i8* @X, i8* @Y) ; <i1*> [#uses=0]
Nick Lewyckyb4f150b2009-09-20 05:48:50 +000025
Nick Lewycky241fa242009-09-20 07:00:24 +000026@I = global i1 xor (i1 icmp ult (i8* @X, i8* @Y), i1 false)
27; CHECK: @I = global i1 icmp ult (i8* @X, i8* @Y) ; <i1*> [#uses=0]
28@J = global i1 xor (i1 icmp ult (i8* @X, i8* @Y), i1 true)
29; CHECK: @J = global i1 icmp uge (i8* @X, i8* @Y) ; <i1*> [#uses=0]
Nick Lewyckycfef6a62009-09-20 07:21:39 +000030
31@K = global i1 icmp eq (i1 icmp ult (i8* @X, i8* @Y), i1 false)
32; CHECK: @K = global i1 icmp uge (i8* @X, i8* @Y) ; <i1*> [#uses=0]
33@L = global i1 icmp eq (i1 icmp ult (i8* @X, i8* @Y), i1 true)
34; CHECK: @L = global i1 icmp ult (i8* @X, i8* @Y) ; <i1*> [#uses=0]
35@M = global i1 icmp ne (i1 icmp ult (i8* @X, i8* @Y), i1 true)
36; CHECK: @M = global i1 icmp uge (i8* @X, i8* @Y) ; <i1*> [#uses=0]
37@N = global i1 icmp ne (i1 icmp ult (i8* @X, i8* @Y), i1 false)
38; CHECK: @N = global i1 icmp ult (i8* @X, i8* @Y) ; <i1*> [#uses=0]
Nick Lewycky5086a102009-09-20 07:31:25 +000039
40@O = global i1 icmp eq (i32 zext (i1 icmp ult (i8* @X, i8* @Y) to i32), i32 0)
41; CHECK: @O = global i1 icmp uge (i8* @X, i8* @Y) ; <i1*> [#uses=0]