Profiler.cc (10094:5be102721895) Profiler.cc (10919:80069a602c83)
1/*
2 * Copyright (c) 1999-2013 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 42 unchanged lines hidden (view full) ---

51#include "base/stl_helpers.hh"
52#include "base/str.hh"
53#include "mem/protocol/MachineType.hh"
54#include "mem/protocol/RubyRequest.hh"
55#include "mem/ruby/network/Network.hh"
56#include "mem/ruby/profiler/AddressProfiler.hh"
57#include "mem/ruby/profiler/Profiler.hh"
58#include "mem/ruby/system/Sequencer.hh"
1/*
2 * Copyright (c) 1999-2013 Mark D. Hill and David A. Wood
3 * All rights reserved.
4 *
5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions are
7 * met: redistributions of source code must retain the above copyright
8 * notice, this list of conditions and the following disclaimer;

--- 42 unchanged lines hidden (view full) ---

51#include "base/stl_helpers.hh"
52#include "base/str.hh"
53#include "mem/protocol/MachineType.hh"
54#include "mem/protocol/RubyRequest.hh"
55#include "mem/ruby/network/Network.hh"
56#include "mem/ruby/profiler/AddressProfiler.hh"
57#include "mem/ruby/profiler/Profiler.hh"
58#include "mem/ruby/system/Sequencer.hh"
59#include "mem/ruby/system/System.hh"
60
61using namespace std;
62using m5::stl_helpers::operator<<;
63
64Profiler::Profiler(const RubySystemParams *p)
65{
66 m_hot_lines = p->hot_lines;
67 m_all_instructions = p->all_instructions;
68
59
60using namespace std;
61using m5::stl_helpers::operator<<;
62
63Profiler::Profiler(const RubySystemParams *p)
64{
65 m_hot_lines = p->hot_lines;
66 m_all_instructions = p->all_instructions;
67
69 m_address_profiler_ptr = new AddressProfiler(p->num_of_sequencers);
68 m_address_profiler_ptr = new AddressProfiler(p->num_of_sequencers, this);
70 m_address_profiler_ptr->setHotLines(m_hot_lines);
71 m_address_profiler_ptr->setAllInstructions(m_all_instructions);
72
73 if (m_all_instructions) {
69 m_address_profiler_ptr->setHotLines(m_hot_lines);
70 m_address_profiler_ptr->setAllInstructions(m_all_instructions);
71
72 if (m_all_instructions) {
74 m_inst_profiler_ptr = new AddressProfiler(p->num_of_sequencers);
73 m_inst_profiler_ptr = new AddressProfiler(p->num_of_sequencers, this);
75 m_inst_profiler_ptr->setHotLines(m_hot_lines);
76 m_inst_profiler_ptr->setAllInstructions(m_all_instructions);
77 }
78}
79
80Profiler::~Profiler()
81{
82}

--- 273 unchanged lines hidden ---
74 m_inst_profiler_ptr->setHotLines(m_hot_lines);
75 m_inst_profiler_ptr->setAllInstructions(m_all_instructions);
76 }
77}
78
79Profiler::~Profiler()
80{
81}

--- 273 unchanged lines hidden ---