SConscript revision 9398
14202Sbinkertn@umich.edu# -*- mode:python -*-
24202Sbinkertn@umich.edu
34202Sbinkertn@umich.edu# Copyright (c) 2006 The Regents of The University of Michigan
44202Sbinkertn@umich.edu# All rights reserved.
54202Sbinkertn@umich.edu#
64202Sbinkertn@umich.edu# Redistribution and use in source and binary forms, with or without
74202Sbinkertn@umich.edu# modification, are permitted provided that the following conditions are
84202Sbinkertn@umich.edu# met: redistributions of source code must retain the above copyright
94202Sbinkertn@umich.edu# notice, this list of conditions and the following disclaimer;
104202Sbinkertn@umich.edu# redistributions in binary form must reproduce the above copyright
114202Sbinkertn@umich.edu# notice, this list of conditions and the following disclaimer in the
124202Sbinkertn@umich.edu# documentation and/or other materials provided with the distribution;
134202Sbinkertn@umich.edu# neither the name of the copyright holders nor the names of its
144202Sbinkertn@umich.edu# contributors may be used to endorse or promote products derived from
154202Sbinkertn@umich.edu# this software without specific prior written permission.
164202Sbinkertn@umich.edu#
174202Sbinkertn@umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
184202Sbinkertn@umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
194202Sbinkertn@umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
204202Sbinkertn@umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
214202Sbinkertn@umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
224202Sbinkertn@umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
234202Sbinkertn@umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
244202Sbinkertn@umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
254202Sbinkertn@umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
264202Sbinkertn@umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
274202Sbinkertn@umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
284202Sbinkertn@umich.edu#
294202Sbinkertn@umich.edu# Authors: Nathan Binkert
304202Sbinkertn@umich.edu
314202Sbinkertn@umich.eduImport('*')
324202Sbinkertn@umich.edu
339398Sandreas.hansson@arm.com# Only build the communication if we have support for protobuf as the
349398Sandreas.hansson@arm.com# tracing relies on it
359398Sandreas.hansson@arm.comif env['HAVE_PROTOBUF']:
369398Sandreas.hansson@arm.com    SimObject('CommMonitor.py')
379398Sandreas.hansson@arm.com    Source('comm_monitor.cc')
389398Sandreas.hansson@arm.com
399259SAli.Saidi@ARM.comSimObject('AddrMapper.py')
404486Sbinkertn@umich.eduSimObject('Bridge.py')
414486Sbinkertn@umich.eduSimObject('Bus.py')
426165Ssanchezd@stanford.eduSimObject('MemObject.py')
436168Snate@binkert.org
449259SAli.Saidi@ARM.comSource('addr_mapper.cc')
454202Sbinkertn@umich.eduSource('bridge.cc')
464202Sbinkertn@umich.eduSource('bus.cc')
479036Sandreas.hansson@arm.comSource('coherent_bus.cc')
484202Sbinkertn@umich.eduSource('mem_object.cc')
498761Sgblack@eecs.umich.eduSource('mport.cc')
509036Sandreas.hansson@arm.comSource('noncoherent_bus.cc')
514202Sbinkertn@umich.eduSource('packet.cc')
524202Sbinkertn@umich.eduSource('port.cc')
538914Sandreas.hansson@arm.comSource('packet_queue.cc')
544202Sbinkertn@umich.eduSource('tport.cc')
558853Sandreas.hansson@arm.comSource('port_proxy.cc')
568799Sgblack@eecs.umich.eduSource('fs_translating_port_proxy.cc')
578799Sgblack@eecs.umich.eduSource('se_translating_port_proxy.cc')
586168Snate@binkert.org
597768SAli.Saidi@ARM.comif env['TARGET_ISA'] != 'no':
608931Sandreas.hansson@arm.com    SimObject('AbstractMemory.py')
618931Sandreas.hansson@arm.com    SimObject('SimpleMemory.py')
629243Sandreas.hansson@arm.com    SimObject('SimpleDRAM.py')
638931Sandreas.hansson@arm.com    Source('abstract_mem.cc')
648931Sandreas.hansson@arm.com    Source('simple_mem.cc')
658763Sgblack@eecs.umich.edu    Source('page_table.cc')
667768SAli.Saidi@ARM.com    Source('physical.cc')
679243Sandreas.hansson@arm.com    Source('simple_dram.cc')
687768SAli.Saidi@ARM.com
699036Sandreas.hansson@arm.comDebugFlag('BaseBus')
708335Snate@binkert.orgDebugFlag('BusAddrRanges')
719036Sandreas.hansson@arm.comDebugFlag('CoherentBus')
729036Sandreas.hansson@arm.comDebugFlag('NoncoherentBus')
739036Sandreas.hansson@arm.comCompoundFlag('Bus', ['BaseBus', 'BusAddrRanges', 'CoherentBus',
749036Sandreas.hansson@arm.com                     'NoncoherentBus'])
759036Sandreas.hansson@arm.com
769164Sandreas.hansson@arm.comDebugFlag('Bridge')
778981Sandreas.hansson@arm.comDebugFlag('CommMonitor')
789243Sandreas.hansson@arm.comDebugFlag('DRAM')
799243Sandreas.hansson@arm.comDebugFlag('DRAMWR')
808335Snate@binkert.orgDebugFlag('LLSC')
818335Snate@binkert.orgDebugFlag('MMU')
828335Snate@binkert.orgDebugFlag('MemoryAccess')
838914Sandreas.hansson@arm.comDebugFlag('PacketQueue')
847780Snilay@cs.wisc.edu
858335Snate@binkert.orgDebugFlag('ProtocolTrace')
868335Snate@binkert.orgDebugFlag('RubyCache')
878683Snilay@cs.wisc.eduDebugFlag('RubyCacheTrace')
888335Snate@binkert.orgDebugFlag('RubyDma')
898335Snate@binkert.orgDebugFlag('RubyGenerated')
908335Snate@binkert.orgDebugFlag('RubyMemory')
918335Snate@binkert.orgDebugFlag('RubyNetwork')
928335Snate@binkert.orgDebugFlag('RubyPort')
939363Snilay@cs.wisc.eduDebugFlag('RubyPrefetcher')
948335Snate@binkert.orgDebugFlag('RubyQueue')
958615Snilay@cs.wisc.eduDebugFlag('RubySequencer')
968335Snate@binkert.orgDebugFlag('RubySlicc')
978687Snilay@cs.wisc.eduDebugFlag('RubySystem')
988335Snate@binkert.orgDebugFlag('RubyTester')
999104Shestness@cs.utexas.eduDebugFlag('RubyStats')
1009105SBrad.Beckmann@amd.comDebugFlag('RubyResourceStalls')
1017780Snilay@cs.wisc.edu
1027780Snilay@cs.wisc.eduCompoundFlag('Ruby', [ 'RubyQueue', 'RubyNetwork', 'RubyTester',
1038687Snilay@cs.wisc.edu    'RubyGenerated', 'RubySlicc', 'RubySystem', 'RubyCache',
1049363Snilay@cs.wisc.edu    'RubyMemory', 'RubyDma', 'RubyPort', 'RubySequencer', 'RubyCacheTrace',
1059363Snilay@cs.wisc.edu    'RubyPrefetcher'])
106