blob: 3346fae91816c1a33519ec87107e85411ff12963 [file] [log] [blame]
; Test call/invoke to null and undef (bugpoint)
; RUN: adsaopt -disable-output -dsnodeequivs %s
target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128-n8:16:32:64"
target triple = "x86_64-unknown-linux-gnu"
declare i32 @__gxx_personality_v0(...)
define i64 @main(i32 %argc, i8** %argv) uwtable {
entry:
%0 = invoke i64 undef(i64 0)
to label %cont unwind label %lpad
cont:
%1 = invoke i64 null(i64 %0)
to label %done unwind label %lpad
lpad:
%2 = landingpad {i8*, i32} personality i32 (...)* @__gxx_personality_v0
cleanup
br label %done
done:
%retval = phi i64 [0, %lpad], [%1, %cont]
%test = call i64 undef(i64 %retval)
%test2 = call i64 null(i64 %test)
ret i64 %retval
}