diff --git a/gen/abi-win64.cpp b/gen/abi-win64.cpp index bd76d5cb..5bd00aa5 100644 --- a/gen/abi-win64.cpp +++ b/gen/abi-win64.cpp @@ -140,9 +140,7 @@ bool Win64TargetABI::returnInArg(TypeFunction* tf) // or ST(1) & ST(0) (creal) // all other structs and static arrays are returned by struct-return (sret) return (rt->ty == Tstruct -#if SARRAYVALUE || rt->ty == Tsarray -#endif ) && !canRewriteAsInt(rt); } diff --git a/gen/abi-x86-64.cpp b/gen/abi-x86-64.cpp index 69771f1f..0563315c 100644 --- a/gen/abi-x86-64.cpp +++ b/gen/abi-x86-64.cpp @@ -444,9 +444,7 @@ bool X86_64TargetABI::returnInArg(TypeFunction* tf) { // All non-structs can be returned in registers. return rt->ty == Tstruct -#if SARRAYVALUE || rt->ty == Tsarray -#endif ; } else { if (rt == Type::tvoid || keepUnchanged(rt)) diff --git a/gen/abi-x86.cpp b/gen/abi-x86.cpp index 9dd4ef92..c2e2e1e3 100644 --- a/gen/abi-x86.cpp +++ b/gen/abi-x86.cpp @@ -78,9 +78,7 @@ struct X86TargetABI : TargetABI if (tf->linkage == LINKd) { return rt->ty == Tstruct -#if SARRAYVALUE || rt->ty == Tsarray -#endif ; } // other ABI's follow C, which is cdouble and creal returned on the stack diff --git a/gen/functions.cpp b/gen/functions.cpp index 9fc74e2d..51a0f48f 100644 --- a/gen/functions.cpp +++ b/gen/functions.cpp @@ -192,9 +192,6 @@ llvm::FunctionType* DtoFunctionType(Type* type, Type* thistype, Type* nesttype, // reference semantics? ref, out and d1 static arrays are bool byref = arg->storageClass & (STCref|STCout); -#if !SARRAYVALUE - byref = byref || (arg->type->toBasetype()->ty == Tsarray); -#endif Type* argtype = arg->type; #if LDC_LLVM_VER >= 302