llvm-project/llvm/test/CodeGen
Tim Northover e25e458d52 Reapply ARM: Do not spill CSR to stack on entry to noreturn functions
Should fix UBSan bot by also checking there's no "uwtable" attribute
before skipping. Otherwise the unwind table will be useless since its
moves expect CSRs to actually be preserved.

A noreturn nounwind function can be expected to never return in any way, and by
never returning it will also never have to restore any callee-saved registers
for its caller. This makes it possible to skip spills of those registers during
function entry, saving some stack space and time in the process. This is rather
useful for embedded targets with limited stack space.

Should fix PR9970.

Patch mostly by myeisha (pmb).

llvm-svn: 329494
2018-04-07 10:57:03 +00:00
..
AArch64 Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
AMDGPU AMDGPU/Metadata: Always report a fixed number of hidden arguments 2018-04-05 20:46:04 +00:00
ARC
ARM Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
AVR [AVR] Add a regression test for struct return lowering 2018-03-20 11:23:03 +00:00
BPF bpf: fix incorrect SELECT_CC lowering 2018-04-03 03:56:37 +00:00
Generic Add additional tests from D45336 2018-04-06 17:18:44 +00:00
Hexagon [Hexagon] Handle subregisters when calculating iteration count in HW loops 2018-04-06 17:51:57 +00:00
Inputs
Lanai
MIR [MIR] Add support for MachineFrameInfo::LocalFrameSize 2018-04-06 08:56:25 +00:00
MSP430
Mips [mips] Regenerate test before posting patch for constant multiplication (NFC) 2018-04-05 10:30:17 +00:00
NVPTX [NVPTX] add support for initializing fp16 arrays. 2018-04-06 22:25:08 +00:00
Nios2
PowerPC Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
RISCV [RISCV] Tablegen-driven Instruction Compression. 2018-04-06 21:07:05 +00:00
SPARC Re-enable "[MachineCopyPropagation] Extend pass to do COPY source forwarding" 2018-02-27 16:59:10 +00:00
SystemZ Use local symbols for creating .stack-size. 2018-03-26 20:40:22 +00:00
Thumb Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
Thumb2 [CodeGen] Add a new pass for PostRA sink 2018-03-22 20:06:47 +00:00
WebAssembly [WebAssembly] Allow for the creation of user-defined custom sections 2018-04-05 17:01:39 +00:00
WinCFGuard
WinEH
X86 Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
XCore Use .set instead of = when printing assignment in assembly output 2018-03-27 16:44:41 +00:00