llvm.org GIT mirror llvm / testing test / CodeGen / X86 / x86-64-sret-return-2.ll
testing

Tree @testing (Download .tar.gz)

x86-64-sret-return-2.ll @testingraw · history · blame

; RUN: llc -mtriple=x86_64-apple-darwin8 < %s | FileCheck %s
; RUN: llc -mtriple=x86_64-pc-linux < %s | FileCheck %s

; FIXME: x32 doesn't know how to select this.  This isn't a regression, it never
; worked.
; RUNX: llc -mtriple=x86_64-pc-linux-gnux32 < %s | FileCheck -check-prefix=X32ABI %s

; This used to crash due to topological sorting issues in selection DAG.
define void @foo(i32* sret %agg.result, i32, i32, i32, i32, i32, void (i32)* %pred) {
entry:
  call void %pred(i32 undef)
  ret void

; CHECK-LABEL: foo:
; CHECK: callq
; CHECK: movq {{.*}}, %rax
; CHECK: ret
}