brintos

brintos / llvm-project-archived public Read only

0
0
Text · 641 B · d18976e Raw
27 lines · plain
1; RUN: llc < %s -mtriple=i686-pc-win32 | FileCheck %s2 3%Foo = type { i32, i32 }4 5declare x86_stdcallcc void @f(ptr inalloca(%Foo) %a)6declare x86_stdcallcc void @i(i32 %a)7 8define void @g() {9; CHECK-LABEL: _g:10  %b = alloca inalloca %Foo11; CHECK: pushl   %eax12; CHECK: pushl   %eax13  %f2 = getelementptr %Foo, ptr %b, i32 0, i32 114  store i32 13, ptr %b15  store i32 42, ptr %f216; CHECK: movl %esp, %eax17; CHECK: movl    $13, (%eax)18; CHECK: movl    $42, 4(%eax)19  call x86_stdcallcc void @f(ptr inalloca(%Foo) %b)20; CHECK: calll   _f@821; CHECK-NOT: %esp22; CHECK: pushl23; CHECK: calll   _i@424  call x86_stdcallcc void @i(i32 0)25  ret void26}27