/* * $Id$ * * [ Description ] * */ #include "Behavioural/Stage_1_Ifetch/Predictor/Meta_Predictor/Two_Level_Branch_Predictor/include/Parameters.h" #include using namespace std; namespace morpheo { namespace behavioural { namespace stage_1_ifetch { namespace predictor { namespace meta_predictor { namespace two_level_branch_predictor { string Parameters::print (uint32_t depth) { log_printf(FUNC,Two_Level_Branch_Predictor,"print","Begin"); string tab = string(depth,'\t'); ostringstream msg; msg << tab << "" << endl << tab << "\t " << endl << tab << "\t" << endl << tab << "\t" << endl << tab << "\t " << endl << tab << "\t" << endl << tab << "\t" << endl << tab << "\t" << endl << tab << "\t" << endl << tab << "\t" << endl << tab << "\t" << endl; if (_have_bht) msg << _param_branch_history_table ->print(depth+1); if (_have_pht) msg << _param_pattern_history_table->print(depth+1); msg << _param_two_level_branch_predictor_glue->print(depth+1); msg << tab << "" << endl; log_printf(FUNC,Two_Level_Branch_Predictor,"print","End"); return msg.str(); }; ostream& operator<< (ostream& output_stream , morpheo::behavioural::stage_1_ifetch::predictor::meta_predictor::two_level_branch_predictor::Parameters & x) { output_stream << x.print(0); return output_stream; }; }; // end namespace two_level_branch_predictor }; // end namespace meta_predictor }; // end namespace predictor }; // end namespace stage_1_ifetch }; // end namespace behavioural }; // end namespace morpheo