1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/include/llvm
Tim Northover beda738748 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
..
ADT [ADT] NFC: Fix bogus StringSwitch rule-of-five boilerplate 2018-03-29 16:51:28 +00:00
Analysis [Analysis] Support aligned new/delete functions. 2018-04-04 19:01:51 +00:00
AsmParser LLParser: add an argument for overriding data layout and do not check alloca addr space 2018-01-30 22:32:39 +00:00
BinaryFormat Add vendor specific calling convention to DWARF 2018-03-22 12:24:07 +00:00
Bitcode Add the ShadowCallStack attribute 2018-04-03 20:10:40 +00:00
CodeGen Reapply ARM: Do not spill CSR to stack on entry to noreturn functions 2018-04-07 10:57:03 +00:00
Config Re-land r329156 "Add llvm-exegesis tool." 2018-04-04 11:37:06 +00:00
DebugInfo DWARFVerifier: validate information in name index entries 2018-04-06 13:34:12 +00:00
Demangle Re-land r329273: [Plugins] Add a slim plugin API to work together with the new PM 2018-04-05 15:04:13 +00:00
ExecutionEngine [ORC] Add a debugging check to catch dangling references to SymbolStringPools. 2018-04-02 21:39:39 +00:00
FuzzMutate [llvm-opt-fuzzer] Avoid adding incorrect inputs to the fuzzer corpus 2018-02-05 11:05:47 +00:00
IR [PatternMatch] define m_FNeg using m_FSub 2018-04-05 15:36:55 +00:00
IRReader LLParser: add an argument for overriding data layout and do not check alloca addr space 2018-01-30 22:32:39 +00:00
LineEditor
Linker Revert "[IRMover] Implement name based structure type mapping" 2018-02-21 20:12:18 +00:00
LTO Sink Analysis/ObjectUtil(canBeOmittedFromSymbolTable) into IR so it can be legitimately be used by Object/IRSymtab 2018-03-21 19:23:45 +00:00
MC [RISCV] Tablegen-driven Instruction Compression. 2018-04-06 21:07:05 +00:00
Object Move CVDebugRecord from CodeView to Object to fix layering 2018-03-26 23:37:02 +00:00
ObjectYAML [WebAssembly] Fix broken gcc build after rL326454 2018-03-01 18:48:08 +00:00
Option [COFF] Process /EXPORT option in fastpath 2018-01-09 20:36:42 +00:00
Passes Re-land r329273: [Plugins] Add a slim plugin API to work together with the new PM 2018-04-05 15:04:13 +00:00
ProfileData [include] Change std::sort to llvm::sort in response to r327219 2018-04-01 18:39:50 +00:00
Support [Support] Make line-number cache robust against access patterns. 2018-04-07 00:44:02 +00:00
TableGen TableGen: Streamline how defs are instantiated 2018-03-21 17:12:53 +00:00
Target [MC][Tablegen] Allow models to describe the retire control unit for llvm-mca. 2018-04-05 15:41:41 +00:00
Testing/Support [Testing/Support]: Better matching of Error failure states 2018-04-05 14:32:10 +00:00
ToolDrivers
Transforms Cleanup Reduction helpers by using ArrayRef(NoneType) constructor. NFCI. 2018-04-06 17:25:06 +00:00
WindowsManifest
WindowsResource
XRay
CMakeLists.txt
InitializePasses.h [CodeGen] Add a new pass for PostRA sink 2018-03-22 20:06:47 +00:00
LinkAllIR.h
LinkAllPasses.h Transforms: Introduce Transforms/Utils.h rather than spreading the declarations amongst Scalar.h and IPO.h 2018-03-28 17:44:36 +00:00
module.modulemap Fix module.modulemap after r328395 2018-03-24 22:14:02 +00:00
module.modulemap.build
Pass.h
PassAnalysisSupport.h [NFC] fix trivial typos in comments 2018-01-23 05:49:30 +00:00
PassInfo.h
PassRegistry.h
PassSupport.h