Mercurial > hg > CbC > CbC_llvm
diff llvm/test/Feature/varargs.ll @ 252:1f2b6ac9f198 llvm-original
LLVM16-1
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Fri, 18 Aug 2023 09:04:13 +0900 |
parents | 1d019706d866 |
children |
line wrap: on
line diff
--- a/llvm/test/Feature/varargs.ll Wed Nov 09 17:47:54 2022 +0900 +++ b/llvm/test/Feature/varargs.ll Fri Aug 18 09:04:13 2023 +0900 @@ -5,25 +5,20 @@ ; Demonstrate all of the variable argument handling intrinsic functions plus ; the va_arg instruction. -declare void @llvm.va_start(i8*) +declare void @llvm.va_start(ptr) -declare void @llvm.va_copy(i8*, i8*) +declare void @llvm.va_copy(ptr, ptr) -declare void @llvm.va_end(i8*) +declare void @llvm.va_end(ptr) define i32 @test(i32 %X, ...) { - %ap = alloca i8* ; <i8**> [#uses=4] - %va.upgrd.1 = bitcast i8** %ap to i8* ; <i8*> [#uses=1] - call void @llvm.va_start( i8* %va.upgrd.1 ) - %tmp = va_arg i8** %ap, i32 ; <i32> [#uses=1] - %aq = alloca i8* ; <i8**> [#uses=2] - %va0.upgrd.2 = bitcast i8** %aq to i8* ; <i8*> [#uses=1] - %va1.upgrd.3 = bitcast i8** %ap to i8* ; <i8*> [#uses=1] - call void @llvm.va_copy( i8* %va0.upgrd.2, i8* %va1.upgrd.3 ) - %va.upgrd.4 = bitcast i8** %aq to i8* ; <i8*> [#uses=1] - call void @llvm.va_end( i8* %va.upgrd.4 ) - %va.upgrd.5 = bitcast i8** %ap to i8* ; <i8*> [#uses=1] - call void @llvm.va_end( i8* %va.upgrd.5 ) + %ap = alloca ptr ; <ptr> [#uses=4] + call void @llvm.va_start( ptr %ap ) + %tmp = va_arg ptr %ap, i32 ; <i32> [#uses=1] + %aq = alloca ptr ; <ptr> [#uses=2] + call void @llvm.va_copy( ptr %aq, ptr %ap ) + call void @llvm.va_end( ptr %aq ) + call void @llvm.va_end( ptr %ap ) ret i32 %tmp }