Lines Matching refs:ARCInstKind
31 const ARCInstKind Class) { in operator <<()
33 case ARCInstKind::Retain: in operator <<()
35 case ARCInstKind::RetainRV: in operator <<()
37 case ARCInstKind::RetainBlock: in operator <<()
39 case ARCInstKind::Release: in operator <<()
41 case ARCInstKind::Autorelease: in operator <<()
43 case ARCInstKind::AutoreleaseRV: in operator <<()
45 case ARCInstKind::AutoreleasepoolPush: in operator <<()
47 case ARCInstKind::AutoreleasepoolPop: in operator <<()
49 case ARCInstKind::NoopCast: in operator <<()
51 case ARCInstKind::FusedRetainAutorelease: in operator <<()
53 case ARCInstKind::FusedRetainAutoreleaseRV: in operator <<()
55 case ARCInstKind::LoadWeakRetained: in operator <<()
57 case ARCInstKind::StoreWeak: in operator <<()
59 case ARCInstKind::InitWeak: in operator <<()
61 case ARCInstKind::LoadWeak: in operator <<()
63 case ARCInstKind::MoveWeak: in operator <<()
65 case ARCInstKind::CopyWeak: in operator <<()
67 case ARCInstKind::DestroyWeak: in operator <<()
69 case ARCInstKind::StoreStrong: in operator <<()
71 case ARCInstKind::CallOrUser: in operator <<()
73 case ARCInstKind::Call: in operator <<()
75 case ARCInstKind::User: in operator <<()
77 case ARCInstKind::IntrinsicUser: in operator <<()
79 case ARCInstKind::None: in operator <<()
85 ARCInstKind llvm::objcarc::GetFunctionClass(const Function *F) { in GetFunctionClass()
90 return StringSwitch<ARCInstKind>(F->getName()) in GetFunctionClass()
91 .Case("objc_autoreleasePoolPush", ARCInstKind::AutoreleasepoolPush) in GetFunctionClass()
92 .Case("clang.arc.use", ARCInstKind::IntrinsicUser) in GetFunctionClass()
93 .Default(ARCInstKind::CallOrUser); in GetFunctionClass()
103 return StringSwitch<ARCInstKind>(F->getName()) in GetFunctionClass()
104 .Case("objc_retain", ARCInstKind::Retain) in GetFunctionClass()
105 .Case("objc_retainAutoreleasedReturnValue", ARCInstKind::RetainRV) in GetFunctionClass()
106 .Case("objc_retainBlock", ARCInstKind::RetainBlock) in GetFunctionClass()
107 .Case("objc_release", ARCInstKind::Release) in GetFunctionClass()
108 .Case("objc_autorelease", ARCInstKind::Autorelease) in GetFunctionClass()
109 .Case("objc_autoreleaseReturnValue", ARCInstKind::AutoreleaseRV) in GetFunctionClass()
110 .Case("objc_autoreleasePoolPop", ARCInstKind::AutoreleasepoolPop) in GetFunctionClass()
111 .Case("objc_retainedObject", ARCInstKind::NoopCast) in GetFunctionClass()
112 .Case("objc_unretainedObject", ARCInstKind::NoopCast) in GetFunctionClass()
113 .Case("objc_unretainedPointer", ARCInstKind::NoopCast) in GetFunctionClass()
115 ARCInstKind::FusedRetainAutorelease) in GetFunctionClass()
116 .Case("objc_retainAutorelease", ARCInstKind::FusedRetainAutorelease) in GetFunctionClass()
118 ARCInstKind::FusedRetainAutoreleaseRV) in GetFunctionClass()
119 .Case("objc_sync_enter", ARCInstKind::User) in GetFunctionClass()
120 .Case("objc_sync_exit", ARCInstKind::User) in GetFunctionClass()
121 .Default(ARCInstKind::CallOrUser); in GetFunctionClass()
126 return StringSwitch<ARCInstKind>(F->getName()) in GetFunctionClass()
127 .Case("objc_loadWeakRetained", ARCInstKind::LoadWeakRetained) in GetFunctionClass()
128 .Case("objc_loadWeak", ARCInstKind::LoadWeak) in GetFunctionClass()
129 .Case("objc_destroyWeak", ARCInstKind::DestroyWeak) in GetFunctionClass()
130 .Default(ARCInstKind::CallOrUser); in GetFunctionClass()
143 return StringSwitch<ARCInstKind>(F->getName()) in GetFunctionClass()
144 .Case("objc_storeWeak", ARCInstKind::StoreWeak) in GetFunctionClass()
145 .Case("objc_initWeak", ARCInstKind::InitWeak) in GetFunctionClass()
146 .Case("objc_storeStrong", ARCInstKind::StoreStrong) in GetFunctionClass()
147 .Default(ARCInstKind::CallOrUser); in GetFunctionClass()
151 return StringSwitch<ARCInstKind>(F->getName()) in GetFunctionClass()
152 .Case("objc_moveWeak", ARCInstKind::MoveWeak) in GetFunctionClass()
153 .Case("objc_copyWeak", ARCInstKind::CopyWeak) in GetFunctionClass()
159 ARCInstKind::None) in GetFunctionClass()
161 ARCInstKind::None) in GetFunctionClass()
163 ARCInstKind::None) in GetFunctionClass()
165 ARCInstKind::None) in GetFunctionClass()
166 .Default(ARCInstKind::CallOrUser); in GetFunctionClass()
170 return ARCInstKind::CallOrUser; in GetFunctionClass()
228 ARCInstKind llvm::objcarc::GetARCInstKind(const Value *V) { in GetARCInstKind()
241 ARCInstKind Class = GetFunctionClass(F); in GetARCInstKind()
242 if (Class != ARCInstKind::CallOrUser) in GetARCInstKind()
246 return ARCInstKind::None; in GetARCInstKind()
248 return ARCInstKind::User; in GetARCInstKind()
306 return ARCInstKind::User; in GetARCInstKind()
317 return ARCInstKind::User; in GetARCInstKind()
322 return ARCInstKind::None; in GetARCInstKind()
326 bool llvm::objcarc::IsUser(ARCInstKind Class) { in IsUser()
328 case ARCInstKind::User: in IsUser()
329 case ARCInstKind::CallOrUser: in IsUser()
330 case ARCInstKind::IntrinsicUser: in IsUser()
332 case ARCInstKind::Retain: in IsUser()
333 case ARCInstKind::RetainRV: in IsUser()
334 case ARCInstKind::RetainBlock: in IsUser()
335 case ARCInstKind::Release: in IsUser()
336 case ARCInstKind::Autorelease: in IsUser()
337 case ARCInstKind::AutoreleaseRV: in IsUser()
338 case ARCInstKind::AutoreleasepoolPush: in IsUser()
339 case ARCInstKind::AutoreleasepoolPop: in IsUser()
340 case ARCInstKind::NoopCast: in IsUser()
341 case ARCInstKind::FusedRetainAutorelease: in IsUser()
342 case ARCInstKind::FusedRetainAutoreleaseRV: in IsUser()
343 case ARCInstKind::LoadWeakRetained: in IsUser()
344 case ARCInstKind::StoreWeak: in IsUser()
345 case ARCInstKind::InitWeak: in IsUser()
346 case ARCInstKind::LoadWeak: in IsUser()
347 case ARCInstKind::MoveWeak: in IsUser()
348 case ARCInstKind::CopyWeak: in IsUser()
349 case ARCInstKind::DestroyWeak: in IsUser()
350 case ARCInstKind::StoreStrong: in IsUser()
351 case ARCInstKind::Call: in IsUser()
352 case ARCInstKind::None: in IsUser()
359 bool llvm::objcarc::IsRetain(ARCInstKind Class) { in IsRetain()
361 case ARCInstKind::Retain: in IsRetain()
362 case ARCInstKind::RetainRV: in IsRetain()
366 case ARCInstKind::RetainBlock: in IsRetain()
367 case ARCInstKind::Release: in IsRetain()
368 case ARCInstKind::Autorelease: in IsRetain()
369 case ARCInstKind::AutoreleaseRV: in IsRetain()
370 case ARCInstKind::AutoreleasepoolPush: in IsRetain()
371 case ARCInstKind::AutoreleasepoolPop: in IsRetain()
372 case ARCInstKind::NoopCast: in IsRetain()
373 case ARCInstKind::FusedRetainAutorelease: in IsRetain()
374 case ARCInstKind::FusedRetainAutoreleaseRV: in IsRetain()
375 case ARCInstKind::LoadWeakRetained: in IsRetain()
376 case ARCInstKind::StoreWeak: in IsRetain()
377 case ARCInstKind::InitWeak: in IsRetain()
378 case ARCInstKind::LoadWeak: in IsRetain()
379 case ARCInstKind::MoveWeak: in IsRetain()
380 case ARCInstKind::CopyWeak: in IsRetain()
381 case ARCInstKind::DestroyWeak: in IsRetain()
382 case ARCInstKind::StoreStrong: in IsRetain()
383 case ARCInstKind::IntrinsicUser: in IsRetain()
384 case ARCInstKind::CallOrUser: in IsRetain()
385 case ARCInstKind::Call: in IsRetain()
386 case ARCInstKind::User: in IsRetain()
387 case ARCInstKind::None: in IsRetain()
394 bool llvm::objcarc::IsAutorelease(ARCInstKind Class) { in IsAutorelease()
396 case ARCInstKind::Autorelease: in IsAutorelease()
397 case ARCInstKind::AutoreleaseRV: in IsAutorelease()
399 case ARCInstKind::Retain: in IsAutorelease()
400 case ARCInstKind::RetainRV: in IsAutorelease()
401 case ARCInstKind::RetainBlock: in IsAutorelease()
402 case ARCInstKind::Release: in IsAutorelease()
403 case ARCInstKind::AutoreleasepoolPush: in IsAutorelease()
404 case ARCInstKind::AutoreleasepoolPop: in IsAutorelease()
405 case ARCInstKind::NoopCast: in IsAutorelease()
406 case ARCInstKind::FusedRetainAutorelease: in IsAutorelease()
407 case ARCInstKind::FusedRetainAutoreleaseRV: in IsAutorelease()
408 case ARCInstKind::LoadWeakRetained: in IsAutorelease()
409 case ARCInstKind::StoreWeak: in IsAutorelease()
410 case ARCInstKind::InitWeak: in IsAutorelease()
411 case ARCInstKind::LoadWeak: in IsAutorelease()
412 case ARCInstKind::MoveWeak: in IsAutorelease()
413 case ARCInstKind::CopyWeak: in IsAutorelease()
414 case ARCInstKind::DestroyWeak: in IsAutorelease()
415 case ARCInstKind::StoreStrong: in IsAutorelease()
416 case ARCInstKind::IntrinsicUser: in IsAutorelease()
417 case ARCInstKind::CallOrUser: in IsAutorelease()
418 case ARCInstKind::Call: in IsAutorelease()
419 case ARCInstKind::User: in IsAutorelease()
420 case ARCInstKind::None: in IsAutorelease()
428 bool llvm::objcarc::IsForwarding(ARCInstKind Class) { in IsForwarding()
430 case ARCInstKind::Retain: in IsForwarding()
431 case ARCInstKind::RetainRV: in IsForwarding()
432 case ARCInstKind::Autorelease: in IsForwarding()
433 case ARCInstKind::AutoreleaseRV: in IsForwarding()
434 case ARCInstKind::NoopCast: in IsForwarding()
436 case ARCInstKind::RetainBlock: in IsForwarding()
437 case ARCInstKind::Release: in IsForwarding()
438 case ARCInstKind::AutoreleasepoolPush: in IsForwarding()
439 case ARCInstKind::AutoreleasepoolPop: in IsForwarding()
440 case ARCInstKind::FusedRetainAutorelease: in IsForwarding()
441 case ARCInstKind::FusedRetainAutoreleaseRV: in IsForwarding()
442 case ARCInstKind::LoadWeakRetained: in IsForwarding()
443 case ARCInstKind::StoreWeak: in IsForwarding()
444 case ARCInstKind::InitWeak: in IsForwarding()
445 case ARCInstKind::LoadWeak: in IsForwarding()
446 case ARCInstKind::MoveWeak: in IsForwarding()
447 case ARCInstKind::CopyWeak: in IsForwarding()
448 case ARCInstKind::DestroyWeak: in IsForwarding()
449 case ARCInstKind::StoreStrong: in IsForwarding()
450 case ARCInstKind::IntrinsicUser: in IsForwarding()
451 case ARCInstKind::CallOrUser: in IsForwarding()
452 case ARCInstKind::Call: in IsForwarding()
453 case ARCInstKind::User: in IsForwarding()
454 case ARCInstKind::None: in IsForwarding()
462 bool llvm::objcarc::IsNoopOnNull(ARCInstKind Class) { in IsNoopOnNull()
464 case ARCInstKind::Retain: in IsNoopOnNull()
465 case ARCInstKind::RetainRV: in IsNoopOnNull()
466 case ARCInstKind::Release: in IsNoopOnNull()
467 case ARCInstKind::Autorelease: in IsNoopOnNull()
468 case ARCInstKind::AutoreleaseRV: in IsNoopOnNull()
469 case ARCInstKind::RetainBlock: in IsNoopOnNull()
471 case ARCInstKind::AutoreleasepoolPush: in IsNoopOnNull()
472 case ARCInstKind::AutoreleasepoolPop: in IsNoopOnNull()
473 case ARCInstKind::FusedRetainAutorelease: in IsNoopOnNull()
474 case ARCInstKind::FusedRetainAutoreleaseRV: in IsNoopOnNull()
475 case ARCInstKind::LoadWeakRetained: in IsNoopOnNull()
476 case ARCInstKind::StoreWeak: in IsNoopOnNull()
477 case ARCInstKind::InitWeak: in IsNoopOnNull()
478 case ARCInstKind::LoadWeak: in IsNoopOnNull()
479 case ARCInstKind::MoveWeak: in IsNoopOnNull()
480 case ARCInstKind::CopyWeak: in IsNoopOnNull()
481 case ARCInstKind::DestroyWeak: in IsNoopOnNull()
482 case ARCInstKind::StoreStrong: in IsNoopOnNull()
483 case ARCInstKind::IntrinsicUser: in IsNoopOnNull()
484 case ARCInstKind::CallOrUser: in IsNoopOnNull()
485 case ARCInstKind::Call: in IsNoopOnNull()
486 case ARCInstKind::User: in IsNoopOnNull()
487 case ARCInstKind::None: in IsNoopOnNull()
488 case ARCInstKind::NoopCast: in IsNoopOnNull()
496 bool llvm::objcarc::IsAlwaysTail(ARCInstKind Class) { in IsAlwaysTail()
499 case ARCInstKind::Retain: in IsAlwaysTail()
500 case ARCInstKind::RetainRV: in IsAlwaysTail()
501 case ARCInstKind::AutoreleaseRV: in IsAlwaysTail()
503 case ARCInstKind::Release: in IsAlwaysTail()
504 case ARCInstKind::Autorelease: in IsAlwaysTail()
505 case ARCInstKind::RetainBlock: in IsAlwaysTail()
506 case ARCInstKind::AutoreleasepoolPush: in IsAlwaysTail()
507 case ARCInstKind::AutoreleasepoolPop: in IsAlwaysTail()
508 case ARCInstKind::FusedRetainAutorelease: in IsAlwaysTail()
509 case ARCInstKind::FusedRetainAutoreleaseRV: in IsAlwaysTail()
510 case ARCInstKind::LoadWeakRetained: in IsAlwaysTail()
511 case ARCInstKind::StoreWeak: in IsAlwaysTail()
512 case ARCInstKind::InitWeak: in IsAlwaysTail()
513 case ARCInstKind::LoadWeak: in IsAlwaysTail()
514 case ARCInstKind::MoveWeak: in IsAlwaysTail()
515 case ARCInstKind::CopyWeak: in IsAlwaysTail()
516 case ARCInstKind::DestroyWeak: in IsAlwaysTail()
517 case ARCInstKind::StoreStrong: in IsAlwaysTail()
518 case ARCInstKind::IntrinsicUser: in IsAlwaysTail()
519 case ARCInstKind::CallOrUser: in IsAlwaysTail()
520 case ARCInstKind::Call: in IsAlwaysTail()
521 case ARCInstKind::User: in IsAlwaysTail()
522 case ARCInstKind::None: in IsAlwaysTail()
523 case ARCInstKind::NoopCast: in IsAlwaysTail()
531 bool llvm::objcarc::IsNeverTail(ARCInstKind Class) { in IsNeverTail()
537 case ARCInstKind::Autorelease: in IsNeverTail()
539 case ARCInstKind::Retain: in IsNeverTail()
540 case ARCInstKind::RetainRV: in IsNeverTail()
541 case ARCInstKind::AutoreleaseRV: in IsNeverTail()
542 case ARCInstKind::Release: in IsNeverTail()
543 case ARCInstKind::RetainBlock: in IsNeverTail()
544 case ARCInstKind::AutoreleasepoolPush: in IsNeverTail()
545 case ARCInstKind::AutoreleasepoolPop: in IsNeverTail()
546 case ARCInstKind::FusedRetainAutorelease: in IsNeverTail()
547 case ARCInstKind::FusedRetainAutoreleaseRV: in IsNeverTail()
548 case ARCInstKind::LoadWeakRetained: in IsNeverTail()
549 case ARCInstKind::StoreWeak: in IsNeverTail()
550 case ARCInstKind::InitWeak: in IsNeverTail()
551 case ARCInstKind::LoadWeak: in IsNeverTail()
552 case ARCInstKind::MoveWeak: in IsNeverTail()
553 case ARCInstKind::CopyWeak: in IsNeverTail()
554 case ARCInstKind::DestroyWeak: in IsNeverTail()
555 case ARCInstKind::StoreStrong: in IsNeverTail()
556 case ARCInstKind::IntrinsicUser: in IsNeverTail()
557 case ARCInstKind::CallOrUser: in IsNeverTail()
558 case ARCInstKind::Call: in IsNeverTail()
559 case ARCInstKind::User: in IsNeverTail()
560 case ARCInstKind::None: in IsNeverTail()
561 case ARCInstKind::NoopCast: in IsNeverTail()
569 bool llvm::objcarc::IsNoThrow(ARCInstKind Class) { in IsNoThrow()
573 case ARCInstKind::Retain: in IsNoThrow()
574 case ARCInstKind::RetainRV: in IsNoThrow()
575 case ARCInstKind::Release: in IsNoThrow()
576 case ARCInstKind::Autorelease: in IsNoThrow()
577 case ARCInstKind::AutoreleaseRV: in IsNoThrow()
578 case ARCInstKind::AutoreleasepoolPush: in IsNoThrow()
579 case ARCInstKind::AutoreleasepoolPop: in IsNoThrow()
581 case ARCInstKind::RetainBlock: in IsNoThrow()
582 case ARCInstKind::FusedRetainAutorelease: in IsNoThrow()
583 case ARCInstKind::FusedRetainAutoreleaseRV: in IsNoThrow()
584 case ARCInstKind::LoadWeakRetained: in IsNoThrow()
585 case ARCInstKind::StoreWeak: in IsNoThrow()
586 case ARCInstKind::InitWeak: in IsNoThrow()
587 case ARCInstKind::LoadWeak: in IsNoThrow()
588 case ARCInstKind::MoveWeak: in IsNoThrow()
589 case ARCInstKind::CopyWeak: in IsNoThrow()
590 case ARCInstKind::DestroyWeak: in IsNoThrow()
591 case ARCInstKind::StoreStrong: in IsNoThrow()
592 case ARCInstKind::IntrinsicUser: in IsNoThrow()
593 case ARCInstKind::CallOrUser: in IsNoThrow()
594 case ARCInstKind::Call: in IsNoThrow()
595 case ARCInstKind::User: in IsNoThrow()
596 case ARCInstKind::None: in IsNoThrow()
597 case ARCInstKind::NoopCast: in IsNoThrow()
607 bool llvm::objcarc::CanInterruptRV(ARCInstKind Class) { in CanInterruptRV()
609 case ARCInstKind::AutoreleasepoolPop: in CanInterruptRV()
610 case ARCInstKind::CallOrUser: in CanInterruptRV()
611 case ARCInstKind::Call: in CanInterruptRV()
612 case ARCInstKind::Autorelease: in CanInterruptRV()
613 case ARCInstKind::AutoreleaseRV: in CanInterruptRV()
614 case ARCInstKind::FusedRetainAutorelease: in CanInterruptRV()
615 case ARCInstKind::FusedRetainAutoreleaseRV: in CanInterruptRV()
617 case ARCInstKind::Retain: in CanInterruptRV()
618 case ARCInstKind::RetainRV: in CanInterruptRV()
619 case ARCInstKind::Release: in CanInterruptRV()
620 case ARCInstKind::AutoreleasepoolPush: in CanInterruptRV()
621 case ARCInstKind::RetainBlock: in CanInterruptRV()
622 case ARCInstKind::LoadWeakRetained: in CanInterruptRV()
623 case ARCInstKind::StoreWeak: in CanInterruptRV()
624 case ARCInstKind::InitWeak: in CanInterruptRV()
625 case ARCInstKind::LoadWeak: in CanInterruptRV()
626 case ARCInstKind::MoveWeak: in CanInterruptRV()
627 case ARCInstKind::CopyWeak: in CanInterruptRV()
628 case ARCInstKind::DestroyWeak: in CanInterruptRV()
629 case ARCInstKind::StoreStrong: in CanInterruptRV()
630 case ARCInstKind::IntrinsicUser: in CanInterruptRV()
631 case ARCInstKind::User: in CanInterruptRV()
632 case ARCInstKind::None: in CanInterruptRV()
633 case ARCInstKind::NoopCast: in CanInterruptRV()
639 bool llvm::objcarc::CanDecrementRefCount(ARCInstKind Kind) { in CanDecrementRefCount()
641 case ARCInstKind::Retain: in CanDecrementRefCount()
642 case ARCInstKind::RetainRV: in CanDecrementRefCount()
643 case ARCInstKind::Autorelease: in CanDecrementRefCount()
644 case ARCInstKind::AutoreleaseRV: in CanDecrementRefCount()
645 case ARCInstKind::NoopCast: in CanDecrementRefCount()
646 case ARCInstKind::FusedRetainAutorelease: in CanDecrementRefCount()
647 case ARCInstKind::FusedRetainAutoreleaseRV: in CanDecrementRefCount()
648 case ARCInstKind::IntrinsicUser: in CanDecrementRefCount()
649 case ARCInstKind::User: in CanDecrementRefCount()
650 case ARCInstKind::None: in CanDecrementRefCount()
657 case ARCInstKind::RetainBlock: in CanDecrementRefCount()
658 case ARCInstKind::Release: in CanDecrementRefCount()
659 case ARCInstKind::AutoreleasepoolPush: in CanDecrementRefCount()
660 case ARCInstKind::AutoreleasepoolPop: in CanDecrementRefCount()
661 case ARCInstKind::LoadWeakRetained: in CanDecrementRefCount()
662 case ARCInstKind::StoreWeak: in CanDecrementRefCount()
663 case ARCInstKind::InitWeak: in CanDecrementRefCount()
664 case ARCInstKind::LoadWeak: in CanDecrementRefCount()
665 case ARCInstKind::MoveWeak: in CanDecrementRefCount()
666 case ARCInstKind::CopyWeak: in CanDecrementRefCount()
667 case ARCInstKind::DestroyWeak: in CanDecrementRefCount()
668 case ARCInstKind::StoreStrong: in CanDecrementRefCount()
669 case ARCInstKind::CallOrUser: in CanDecrementRefCount()
670 case ARCInstKind::Call: in CanDecrementRefCount()