; RUN: llvm-as %t1.ll -o - | llvm-dis > %t2.ll
; RUN: diff %t1.ll %t2.ll
-%ZFunTy = type i32(i8 zext)
-%SFunTy = type i32(i8 sext)
+%ZFunTy = type i32(i8)
+%SFunTy = type i32(i8)
-declare i16 @"test"(i16 sext %arg) sext
-declare i8 @"test2" (i16 zext %a2) zext
+declare signext i16 @"test"(i16 signext %arg)
+declare zeroext i8 @"test2" (i16 zeroext %a2)
-implementation
+declare i32 @"test3"(i32* noalias %p)
-define i32 @main(i32 %argc, i8 **%argv) {
+declare void @exit(i32) noreturn nounwind
+
+define i32 @main(i32 inreg %argc, i8 ** inreg %argv) nounwind {
%val = trunc i32 %argc to i16
- %res1 = call i16 (i16 sext) sext *@test(i16 %val)
+ %res1 = call signext i16 (i16 )@test(i16 signext %val)
%two = add i16 %res1, %res1
- %res2 = call i8 @test2(i16 %two zext) zext
+ %res2 = call zeroext i8 @test2(i16 zeroext %two )
%retVal = sext i16 %two to i32
ret i32 %retVal
}
+
+declare void @function_to_resolve_eagerly() nonlazybind