SConscript revision 10612:6332c9d471a8
1955SN/A# -*- mode:python -*- 2955SN/A 35871Snate@binkert.org# Copyright (c) 2006 The Regents of The University of Michigan 41762SN/A# All rights reserved. 5955SN/A# 6955SN/A# Redistribution and use in source and binary forms, with or without 7955SN/A# modification, are permitted provided that the following conditions are 8955SN/A# met: redistributions of source code must retain the above copyright 9955SN/A# notice, this list of conditions and the following disclaimer; 10955SN/A# redistributions in binary form must reproduce the above copyright 11955SN/A# notice, this list of conditions and the following disclaimer in the 12955SN/A# documentation and/or other materials provided with the distribution; 13955SN/A# neither the name of the copyright holders nor the names of its 14955SN/A# contributors may be used to endorse or promote products derived from 15955SN/A# this software without specific prior written permission. 16955SN/A# 17955SN/A# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18955SN/A# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19955SN/A# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20955SN/A# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21955SN/A# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22955SN/A# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23955SN/A# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24955SN/A# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25955SN/A# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26955SN/A# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27955SN/A# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28955SN/A# 292665Ssaidi@eecs.umich.edu# Authors: Nathan Binkert 302665Ssaidi@eecs.umich.edu 315863Snate@binkert.orgImport('*') 32955SN/A 33955SN/A# Only build the communication if we have support for protobuf as the 34955SN/A# tracing relies on it 35955SN/Aif env['HAVE_PROTOBUF']: 36955SN/A SimObject('CommMonitor.py') 372632Sstever@eecs.umich.edu Source('comm_monitor.cc') 382632Sstever@eecs.umich.edu 392632Sstever@eecs.umich.eduSimObject('AbstractMemory.py') 402632Sstever@eecs.umich.eduSimObject('AddrMapper.py') 41955SN/ASimObject('Bridge.py') 422632Sstever@eecs.umich.eduSimObject('DRAMCtrl.py') 432632Sstever@eecs.umich.eduSimObject('ExternalMaster.py') 442761Sstever@eecs.umich.eduSimObject('ExternalSlave.py') 452632Sstever@eecs.umich.eduSimObject('MemObject.py') 462632Sstever@eecs.umich.eduSimObject('SimpleMemory.py') 472632Sstever@eecs.umich.eduSimObject('XBar.py') 482761Sstever@eecs.umich.edu 492761Sstever@eecs.umich.eduSource('abstract_mem.cc') 502761Sstever@eecs.umich.eduSource('addr_mapper.cc') 512632Sstever@eecs.umich.eduSource('bridge.cc') 522632Sstever@eecs.umich.eduSource('coherent_xbar.cc') 532761Sstever@eecs.umich.eduSource('drampower.cc') 542761Sstever@eecs.umich.eduSource('dram_ctrl.cc') 552761Sstever@eecs.umich.eduSource('external_master.cc') 562761Sstever@eecs.umich.eduSource('external_slave.cc') 572761Sstever@eecs.umich.eduSource('mem_object.cc') 582632Sstever@eecs.umich.eduSource('mport.cc') 592632Sstever@eecs.umich.eduSource('noncoherent_xbar.cc') 602632Sstever@eecs.umich.eduSource('packet.cc') 612632Sstever@eecs.umich.eduSource('port.cc') 622632Sstever@eecs.umich.eduSource('packet_queue.cc') 632632Sstever@eecs.umich.eduSource('port_proxy.cc') 642632Sstever@eecs.umich.eduSource('physical.cc') 65955SN/ASource('simple_mem.cc') 66955SN/ASource('snoop_filter.cc') 67955SN/ASource('tport.cc') 685863Snate@binkert.orgSource('xbar.cc') 695863Snate@binkert.org 705863Snate@binkert.orgif env['TARGET_ISA'] != 'null': 715863Snate@binkert.org Source('fs_translating_port_proxy.cc') 725863Snate@binkert.org Source('se_translating_port_proxy.cc') 735863Snate@binkert.org Source('page_table.cc') 745863Snate@binkert.orgif env['TARGET_ISA'] == 'x86': 755863Snate@binkert.org Source('multi_level_page_table.cc') 765863Snate@binkert.org 775863Snate@binkert.orgif env['HAVE_DRAMSIM']: 785863Snate@binkert.org SimObject('DRAMSim2.py') 795863Snate@binkert.org Source('dramsim2_wrapper.cc') 805863Snate@binkert.org Source('dramsim2.cc') 815863Snate@binkert.org 825863Snate@binkert.orgSimObject('MemChecker.py') 835863Snate@binkert.orgSource('mem_checker.cc') 845863Snate@binkert.orgSource('mem_checker_monitor.cc') 855863Snate@binkert.org 865863Snate@binkert.orgDebugFlag('AddrRanges') 875863Snate@binkert.orgDebugFlag('BaseXBar') 885863Snate@binkert.orgDebugFlag('CoherentXBar') 895863Snate@binkert.orgDebugFlag('NoncoherentXBar') 905863Snate@binkert.orgDebugFlag('SnoopFilter') 915863Snate@binkert.orgCompoundFlag('XBar', ['BaseXBar', 'CoherentXBar', 'NoncoherentXBar', 925863Snate@binkert.org 'SnoopFilter']) 935863Snate@binkert.org 945863Snate@binkert.orgDebugFlag('Bridge') 955863Snate@binkert.orgDebugFlag('CommMonitor') 965863Snate@binkert.orgDebugFlag('DRAM') 975863Snate@binkert.orgDebugFlag('DRAMPower') 985863Snate@binkert.orgDebugFlag('DRAMState') 99955SN/ADebugFlag('ExternalPort') 1005396Ssaidi@eecs.umich.eduDebugFlag('LLSC') 1015863Snate@binkert.orgDebugFlag('MMU') 1025863Snate@binkert.orgDebugFlag('MemoryAccess') 1034202Sbinkertn@umich.eduDebugFlag('PacketQueue') 1045863Snate@binkert.org 1055863Snate@binkert.orgDebugFlag("DRAMSim2") 1065863Snate@binkert.org 1075863Snate@binkert.orgDebugFlag("MemChecker") 108955SN/ADebugFlag("MemCheckerMonitor") 1095273Sstever@gmail.com