| 5523 | } |
| 5524 | |
| 5525 | void BfHotDepData::Deref() |
| 5526 | { |
| 5527 | mRefCount--; |
| 5528 | BF_ASSERT(mRefCount >= 0); |
| 5529 | |
| 5530 | if (mRefCount == 0) |
| 5531 | { |
| 5532 | switch (mDataKind) |
| 5533 | { |
| 5534 | case BfHotDepDataKind_TypeVersion: |
| 5535 | delete (BfHotTypeVersion*)this; |
| 5536 | break; |
| 5537 | case BfHotDepDataKind_ThisType: |
| 5538 | delete (BfHotThisType*)this; |
| 5539 | break; |
| 5540 | case BfHotDepDataKind_Allocation: |
| 5541 | delete (BfHotAllocation*)this; |
| 5542 | break; |
| 5543 | case BfHotDepDataKind_Method: |
| 5544 | delete (BfHotMethod*)this; |
| 5545 | break; |
| 5546 | case BfHotDepDataKind_DupMethod: |
| 5547 | delete (BfHotDupMethod*)this; |
| 5548 | break; |
| 5549 | case BfHotDepDataKind_DevirtualizedMethod: |
| 5550 | delete (BfHotDevirtualizedMethod*)this; |
| 5551 | break; |
| 5552 | case BfHotDepDataKind_InnerMethod: |
| 5553 | delete (BfHotInnerMethod*)this; |
| 5554 | break; |
| 5555 | case BfHotDepDataKind_FunctionPtr: |
| 5556 | delete (BfHotFunctionReference*)this; |
| 5557 | break; |
| 5558 | case BfHotDepDataKind_VirtualDecl: |
| 5559 | delete (BfHotVirtualDeclaration*)this; |
| 5560 | break; |
| 5561 | default: |
| 5562 | BF_FATAL("Not handled"); |
| 5563 | } |
| 5564 | } |
| 5565 | } |
| 5566 | |
| 5567 | void BfHotMethod::Clear(bool keepDupMethods) |
| 5568 | { |
no outgoing calls
no test coverage detected