1 //! This test checks that types of up to 128 bits are returned by-value instead of via out-pointer.
3 // compile-flags: -C no-prepopulate-passes -O
14 // CHECK: define i128 @modify(%S* noalias nocapture dereferenceable(16) %s)
16 pub fn modify(s
: S
) -> S
{
17 S { a: s.a + s.a, b: s.b + s.b, c: s.c + s.c }
28 // CHECK: define void @m_big(%TooBig* [[ATTRS:.*sret.*]], %TooBig* [[ATTRS2:.*]] %s)
30 pub fn m_big(s
: TooBig
) -> TooBig
{
31 TooBig { a: s.a + s.a, b: s.b + s.b, c: s.c + s.c, d: s.d + s.d }