forked from OSchip/llvm-project
e25e458d52
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 |
||
---|---|---|
.. | ||
2007-01-31-RegInfoAssert.ll | ||
2007-02-02-JoinIntervalsCrash.ll | ||
2007-05-05-InvalidPushPop.ll | ||
2009-06-18-ThumbCommuteMul.ll | ||
2009-07-20-TwoAddrBug.ll | ||
2009-07-27-PEIAssert.ll | ||
2009-08-12-ConstIslandAssert.ll | ||
2009-08-12-RegInfoAssert.ll | ||
2009-08-20-ISelBug.ll | ||
2009-12-17-pre-regalloc-taildup.ll | ||
2010-06-18-SibCallCrash.ll | ||
2010-07-01-FuncAlign.ll | ||
2010-07-15-debugOrdering.ll | ||
2011-05-11-DAGLegalizer.ll | ||
2011-06-16-NoGPRs.ll | ||
2011-EpilogueBug.ll | ||
2012-04-26-M0ISelBug.ll | ||
2014-06-10-thumb1-ldst-opt-bug.ll | ||
DbgValueOtherTargets.test | ||
PR17309.ll | ||
PR35481.ll | ||
PR36658.mir | ||
addr-modes.ll | ||
and_neg.ll | ||
asmprinter-bug.ll | ||
barrier.ll | ||
bic_imm.ll | ||
branchless-cmp.ll | ||
callee_save.ll | ||
cmp-add-fold.ll | ||
cmp-fold.ll | ||
constants.ll | ||
copy_thumb.ll | ||
cortex-m0-unaligned-access.ll | ||
dyn-stackalloc.ll | ||
fastcc.ll | ||
fpconv.ll | ||
fpow.ll | ||
frame-access.ll | ||
frame_thumb.ll | ||
iabs.ll | ||
inlineasm-imm-thumb.ll | ||
inlineasm-thumb.ll | ||
ispositive.ll | ||
large-stack.ll | ||
ldm-merge-call.ll | ||
ldm-merge-struct.ll | ||
ldm-stm-base-materialization-thumb2.ll | ||
ldm-stm-base-materialization.ll | ||
ldm-stm-postinc.ll | ||
ldr_ext.ll | ||
ldr_frame.ll | ||
lit.local.cfg | ||
litpoolremat.ll | ||
long-setcc.ll | ||
long.ll | ||
long_shift.ll | ||
machine-cse-physreg.mir | ||
mature-mc-support.ll | ||
mul.ll | ||
mvn.ll | ||
optionaldef-scheduling.ll | ||
pop.ll | ||
pr35836.ll | ||
pr35836_2.ll | ||
push.ll | ||
remove-unneeded-push-pop.ll | ||
rev.ll | ||
segmented-stacks-dynamic.ll | ||
segmented-stacks.ll | ||
select.ll | ||
sjljehprepare-lower-vector.ll | ||
stack-access.ll | ||
stack-coloring-without-frame-ptr.ll | ||
stack-frame.ll | ||
stack_guard_remat.ll | ||
stm-deprecated.ll | ||
stm-merge.ll | ||
stm-scavenging.ll | ||
tbb-reuse.mir | ||
thumb-imm.ll | ||
thumb-ldm.ll | ||
thumb-shrink-wrapping.ll | ||
trap.ll | ||
triple.ll | ||
tst_teq.ll | ||
unord.ll | ||
vargs.ll |