29 lines · plain
1; RUN: llc < %s -mtriple=armv7-linux-gnueabihf | FileCheck %s -check-prefix=EABI2; RUN: llc < %s -mtriple=arm-linux-gnu | FileCheck %s -check-prefix=OABI3 4define i32 @f(i32 %a, ...) {5entry:6 %a_addr = alloca i32 ; <ptr> [#uses=1]7 %retval = alloca i32, align 4 ; <ptr> [#uses=2]8 %tmp = alloca i32, align 4 ; <ptr> [#uses=2]9 store i32 %a, ptr %a_addr10 store i32 0, ptr %tmp11 %tmp1 = load i32, ptr %tmp ; <i32> [#uses=1]12 store i32 %tmp1, ptr %retval13 call void @llvm.va_start(ptr null)14 call void asm sideeffect "", "~{d8}"()15 br label %return16 17return: ; preds = %entry18 %retval2 = load i32, ptr %retval ; <i32> [#uses=1]19 ret i32 %retval220; EABI: add sp, sp, #1621; EABI: vpop {d8}22; EABI: add sp, sp, #423; EABI: add sp, sp, #1224 25; OABI: add sp, sp, #2426}27 28declare void @llvm.va_start(ptr) nounwind29