llvm-6502/test/CodeGen
Tim Northover d7a4f74f15 AArch64: treat [N x Ty] as a block during procedure calls.
The AAPCS treats small structs and homogeneous floating (or vector) aggregates
specially, and guarantees they either get passed as a contiguous block of
registers, or prevent any future use of those registers and get passed on the
stack.

This concept can fit quite neatly into LLVM's own type system, mapping an HFA
to [N x float] and so on, and small structs to [N x i64]. Doing so allows
front-ends to emit AAPCS compliant code without having to duplicate the
register counting logic.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@222903 91177308-0d34-0410-b5e6-96231b3b80d8
2014-11-27 21:02:42 +00:00
..
AArch64 AArch64: treat [N x Ty] as a block during procedure calls. 2014-11-27 21:02:42 +00:00
ARM Stop uppercasing build attribute data. 2014-11-27 12:13:56 +00:00
CPP
Generic
Hexagon
Inputs
Mips [mips][micromips] Use call instructions with short delay slots 2014-11-25 10:50:00 +00:00
MSP430
NVPTX
PowerPC [PowerPC] Implement combineRepeatedFPDivisors 2014-11-24 23:45:21 +00:00
R600 R600: Fix extloads of i1 on R600/Evergreen 2014-11-23 02:57:54 +00:00
SPARC
SystemZ
Thumb [Thumb1] Re-write emitThumbRegPlusImmediate 2014-11-17 11:18:10 +00:00
Thumb2 ARM: allow constpool entry to be moved to the user's block in all cases. 2014-11-13 17:58:53 +00:00
X86 AVX-512: Scalar ERI intrinsics 2014-11-26 10:46:49 +00:00
XCore