1 ; RUN: opt -instsimplify -S < %s | FileCheck %s
6 %r = mul i64 undef, undef
11 ; CHECK: ret i64 undef
18 ; CHECK: ret i64 undef
39 ; CHECK: ret i64 undef
41 %r = and i64 undef, undef
46 ; CHECK: ret i64 undef
48 %r = or i64 undef, undef
53 ; CHECK: ret i64 undef
55 %r = udiv i64 undef, 1
60 ; CHECK: ret i64 undef
62 %r = sdiv i64 undef, 1
69 %r = urem i64 undef, 1
75 define i64 @test10() {
76 %r = srem i64 undef, 1
81 ; CHECK: ret i64 undef
82 define i64 @test11() {
83 %r = shl i64 undef, undef
88 ; CHECK: ret i64 undef
89 define i64 @test11b(i64 %a) {
90 %r = shl i64 %a, undef
95 ; CHECK: ret i64 undef
96 define i64 @test12() {
97 %r = ashr i64 undef, undef
102 ; CHECK: ret i64 undef
103 define i64 @test12b(i64 %a) {
104 %r = ashr i64 %a, undef
109 ; CHECK: ret i64 undef
110 define i64 @test13() {
111 %r = lshr i64 undef, undef
116 ; CHECK: ret i64 undef
117 define i64 @test13b(i64 %a) {
118 %r = lshr i64 %a, undef
123 ; CHECK: ret i1 undef
124 define i1 @test14() {
125 %r = icmp slt i64 undef, undef
130 ; CHECK: ret i1 undef
131 define i1 @test15() {
132 %r = icmp ult i64 undef, undef
137 ; CHECK: ret i64 undef
138 define i64 @test16(i64 %a) {
139 %r = select i1 undef, i64 %a, i64 undef
144 ; CHECK: ret i64 undef
145 define i64 @test17(i64 %a) {
146 %r = select i1 undef, i64 undef, i64 %a
151 ; CHECK: ret i64 undef
152 define i64 @test18(i64 %a) {
153 %r = call i64 (i64)* undef(i64 %a)