Skip to content
Snippets Groups Projects
Commit 40183fb6 authored by Radovan Červený's avatar Radovan Červený
Browse files

changed hints to a template function

parent 38e53b4f
No related branches found
No related tags found
1 merge request!14BP_cervera3 - new measurements
......@@ -48,7 +48,8 @@ MeasurementResults MeasurementEngine::get_results ( ) const {
return MeasurementResults ( frames );
}
 
void MeasurementEngine::memory_hint ( MemoryHint mh ) {
template < >
void MeasurementEngine::hint ( MemoryHint mh ) {
if ( ( frame_idx_stack.size ( ) == 0 ) || ( frames[frame_idx_stack.back ( )].type == measurements::Type::ROOT ) ) return;
 
MemoryDataFrame::hint ( frame_idx_stack.back ( ), frames, std::move ( mh ) );
......
......@@ -23,7 +23,8 @@ public:
void reset_measurements ( );
MeasurementResults get_results ( ) const;
 
void memory_hint ( MemoryHint );
template < typename Hint >
void hint ( Hint );
 
static MeasurementEngine INSTANCE;
};
......
......@@ -22,7 +22,7 @@ void * operator new( std::size_t n, bool measure ) {
 
// send it to the engine if it does not come from stealth allocation
if ( measure )
measurements::memory_hint ( { measurements::MemoryHint::Type::NEW, n } );
measurements::hint ( measurements::MemoryHint { measurements::MemoryHint::Type::NEW, n } );
 
return static_cast < void * > ( sptr );
}
......@@ -48,7 +48,7 @@ void operator delete( void * ptr, bool measure ) noexcept {
 
// read the block size and send it to the engine if it does not come from stealth allocation
if ( measure )
measurements::memory_hint ( { measurements::MemoryHint::Type::DELETE, * sptr } );
measurements::hint ( measurements::MemoryHint { measurements::MemoryHint::Type::DELETE, * sptr } );
 
std::free ( sptr );
}
......
......@@ -25,8 +25,9 @@ MeasurementResults results ( ) {
return MeasurementEngine::INSTANCE.get_results ( );
}
 
void memory_hint ( MemoryHint mh ) {
MeasurementEngine::INSTANCE.memory_hint ( std::move ( mh ) );
template < typename Hint >
void hint ( Hint hint ) {
MeasurementEngine::INSTANCE.hint ( std::move ( hint ) );
}
 
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment