1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-23 11:13:28 +01:00
llvm-mirror/test/CodeGen/Hexagon/ret-struct-by-val.ll
Krzysztof Parzyszek 47ef3fe260 [Hexagon] Handle returning small structures by value
This is compliant with the official ABI, but allows experimentation with
calling conventions.

llvm-svn: 275822
2016-07-18 17:30:41 +00:00

19 lines
345 B
LLVM

; RUN: llc -march=hexagon < %s | FileCheck %s
; CHECK: r0 = add(r0, r1)
; Allow simple structures to be returned by value.
%s = type { i32, i32 }
declare %s @foo() #0
define i32 @fred() #0 {
%t0 = call %s @foo()
%x = extractvalue %s %t0, 0
%y = extractvalue %s %t0, 1
%r = add i32 %x, %y
ret i32 %r
}
attributes #0 = { nounwind }