llvm-project/llvm/test/Transforms/ObjCARC
Michael Gottesman 24b2f6fdda [objc-arc] Convert the one directional retain/release relation assert to a conditional check + fail.
Due to the previously added overflow checks, we can have a retain/release
relation that is one directional. This occurs specifically when we run into an
additive overflow causing us to drop state in only one direction. If that
occurs, we should bail and not optimize that retain/release instead of
asserting.

Apologies for the size of the testcase. It is necessary to cause the additive
cfg overflow to trigger.

rdar://15377890

llvm-svn: 194083
2013-11-05 16:02:40 +00:00
..
allocas.ll [objc-arc] KnownSafe does not imply that it is safe to perform code motion across CFG edges since even if it is safe to remove RR pairs, we may still be able to move a retain/release into a loop. 2013-05-24 20:44:05 +00:00
apelim.ll [objc-arc] Test cleanups. 2013-04-27 05:25:54 +00:00
arc-annotations.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
basic.ll [objc-arc] Move some block tests from basic.ll -> retain-block.ll and add some missing CHECK-LABELS. 2013-09-03 22:40:50 +00:00
cfg-hazards.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
contract-marker.ll [objc-arc] Test cleanups. 2013-04-27 05:25:54 +00:00
contract-storestrong-ivar.ll
contract-storestrong.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
contract-testcases.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
contract.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
empty-block.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
ensure-that-exception-unwind-path-is-visited.ll Debug Info Testing: update context from empty string to null. 2013-09-08 03:11:54 +00:00
escape.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
expand.ll [objc-arc] Check that objc-arc-expand properly handles all strictly forwarding calls and does not touch calls which are not strictly forwarding (i.e. objc_retainBlock). 2013-04-21 01:57:46 +00:00
gvn.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
intrinsic-use-isolated.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
intrinsic-use.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
invoke.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
move-and-form-retain-autorelease.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
move-and-merge-autorelease.ll [objc-arc] Apply the RV optimization to retains next to calls in ObjCARCContract instead of ObjCARCOpts. 2013-04-29 06:53:53 +00:00
nested.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
path-overflow.ll [objc-arc] Convert the one directional retain/release relation assert to a conditional check + fail. 2013-11-05 16:02:40 +00:00
pointer-types.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
post-inlining.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
pr12270.ll Tests: rewrite 'opt ... %s' to 'opt ... < %s' so that opt does not emit a ModuleID 2012-12-30 02:33:22 +00:00
retain-block-side-effects.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
retain-not-declared.ll Update Transforms tests to use CHECK-LABEL for easier debugging. No functionality change. 2013-07-14 01:42:54 +00:00
rle-s2l.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
rv.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
split-backedge.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00
tail-call-invariant-enforcement.ll [objc-arc] Cleaned up tail-call-invariant-enforcement.ll. 2013-04-21 02:59:44 +00:00
weak-contract.ll
weak-copies.ll Use references to attribute groups on the call/invoke instructions. 2013-02-22 09:09:42 +00:00
weak-dce.ll Fix replacing all the users of objc weak runtime routines 2012-05-18 22:17:29 +00:00
weak.ll Catch more CHECK that can be converted to CHECK-LABEL in Transforms for easier debugging. No functionality change. 2013-07-14 01:50:49 +00:00