brintos

brintos / llvm-project-archived public Read only

0
0
Text · 671 B · 26be80e Raw
26 lines · plain
1; RUN: llc -verify-machineinstrs -mtriple=x86_64-pc-linux < %s | FileCheck %s2; RUN: llc -verify-machineinstrs -mtriple=x86_64-pc-linux-gnux32 < %s | FileCheck -check-prefix=X32ABI %s3 4; x32 uses %esp, %ebp as stack and frame pointers5 6; CHECK-LABEL: foo7; CHECK: pushq %rbp8; CHECK: movq %rsp, %rbp9; CHECK: movq %rdi, -8(%rbp)10; CHECK: popq %rbp11; X32ABI-LABEL: foo12; X32ABI: pushq %rbp13; X32ABI: movl %esp, %ebp14; X32ABI: movl %edi, -4(%ebp)15; X32ABI: popq %rbp16 17define void @foo(ptr %a) #0 {18entry:19  %a.addr = alloca ptr, align 420  %b = alloca ptr, align 421  store ptr %a, ptr %a.addr, align 422  ret void23}24 25attributes #0 = { nounwind uwtable "frame-pointer"="all"}26