Home | History | Annotate | Download | only in profile

Lines Matching refs:closure

319  * The closure is designed to abstact away two types of value profile data:
357 * information for fast implementation of closure interfaces.
469 /* Closure based interfaces. */
475 uint32_t getValueProfDataSize(ValueProfRecordClosure *Closure) {
478 const void *Record = Closure->Record;
479 uint32_t NumValueKinds = Closure->GetNumValueKinds(Record);
484 uint32_t NumValueSites = Closure->GetNumValueSites(Record, Kind);
488 Closure->GetNumValueData(Record, Kind));
495 * from the \c Closure and serialize the data into \c This record instance.
498 ValueProfRecordClosure *Closure,
501 const void *Record = Closure->Record;
507 uint32_t ND = Closure->GetNumValueDataForSite(Record, ValueKind, S);
509 Closure->GetValueForSite(Record, DstVD, ValueKind, S,
510 Closure->RemapValueData);
516 * Extract value profile data of a function from the \c Closure
518 * memory allocated by the \c Closure's allocator method.
520 ValueProfData *serializeValueProfDataFrom(ValueProfRecordClosure *Closure,
523 uint32_t TotalSize = getValueProfDataSize(Closure);
526 DstData ? DstData : Closure->AllocValueProfData(TotalSize);
529 VPD->NumValueKinds = Closure->GetNumValueKinds(Closure->Record);
532 uint32_t NumValueSites = Closure->GetNumValueSites(Closure->Record, Kind);
535 serializeValueProfRecordFrom(VR, Closure, Kind, NumValueSites);