SConscript revision 9657:0e15490aad4f
14120Sgblack@eecs.umich.edu# -*- mode:python -*- 24120Sgblack@eecs.umich.edu 34120Sgblack@eecs.umich.edu# Copyright (c) 2012 ARM Limited 44120Sgblack@eecs.umich.edu# All rights reserved. 54120Sgblack@eecs.umich.edu# 64120Sgblack@eecs.umich.edu# The license below extends only to copyright in the software and shall 74120Sgblack@eecs.umich.edu# not be construed as granting a license to any other intellectual 84120Sgblack@eecs.umich.edu# property including but not limited to intellectual property relating 94120Sgblack@eecs.umich.edu# to a hardware implementation of the functionality of the software 104120Sgblack@eecs.umich.edu# licensed hereunder. You may use the software subject to the license 114120Sgblack@eecs.umich.edu# terms below provided that you ensure that this notice is replicated 124120Sgblack@eecs.umich.edu# unmodified and in its entirety in all distributions of the software, 134120Sgblack@eecs.umich.edu# modified or unmodified, in source code or in binary form. 144120Sgblack@eecs.umich.edu# 154120Sgblack@eecs.umich.edu# Redistribution and use in source and binary forms, with or without 164120Sgblack@eecs.umich.edu# modification, are permitted provided that the following conditions are 174120Sgblack@eecs.umich.edu# met: redistributions of source code must retain the above copyright 184120Sgblack@eecs.umich.edu# notice, this list of conditions and the following disclaimer; 194120Sgblack@eecs.umich.edu# redistributions in binary form must reproduce the above copyright 204120Sgblack@eecs.umich.edu# notice, this list of conditions and the following disclaimer in the 214120Sgblack@eecs.umich.edu# documentation and/or other materials provided with the distribution; 224120Sgblack@eecs.umich.edu# neither the name of the copyright holders nor the names of its 234120Sgblack@eecs.umich.edu# contributors may be used to endorse or promote products derived from 244120Sgblack@eecs.umich.edu# this software without specific prior written permission. 254120Sgblack@eecs.umich.edu# 264120Sgblack@eecs.umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 274120Sgblack@eecs.umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 284120Sgblack@eecs.umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 294120Sgblack@eecs.umich.edu# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 304120Sgblack@eecs.umich.edu# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 315334Sgblack@eecs.umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 324120Sgblack@eecs.umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 334120Sgblack@eecs.umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 344120Sgblack@eecs.umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 354120Sgblack@eecs.umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 364120Sgblack@eecs.umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 374120Sgblack@eecs.umich.edu# 384120Sgblack@eecs.umich.edu# Authors: Andreas Sandberg 394120Sgblack@eecs.umich.edu 404120Sgblack@eecs.umich.eduImport('*') 414120Sgblack@eecs.umich.edu 424120Sgblack@eecs.umich.eduif env['USE_KVM']: 434120Sgblack@eecs.umich.edu SimObject('KvmVM.py') 444120Sgblack@eecs.umich.edu SimObject('BaseKvmCPU.py') 454120Sgblack@eecs.umich.edu 464120Sgblack@eecs.umich.edu Source('base.cc') 474120Sgblack@eecs.umich.edu Source('vm.cc') 484120Sgblack@eecs.umich.edu Source('perfevent.cc') 494120Sgblack@eecs.umich.edu Source('timer.cc') 504120Sgblack@eecs.umich.edu 514120Sgblack@eecs.umich.edu if env['TARGET_ISA'] == 'arm': 524120Sgblack@eecs.umich.edu SimObject('ArmKvmCPU.py') 534120Sgblack@eecs.umich.edu Source('arm_cpu.cc') 544120Sgblack@eecs.umich.edu 554120Sgblack@eecs.umich.edu DebugFlag('Kvm', 'Basic KVM Functionality') 564120Sgblack@eecs.umich.edu DebugFlag('KvmContext', 'KVM/gem5 context synchronization') 574120Sgblack@eecs.umich.edu DebugFlag('KvmIO', 'KVM MMIO diagnostics') 584120Sgblack@eecs.umich.edu DebugFlag('KvmInt', 'KVM Interrupt handling') 594120Sgblack@eecs.umich.edu DebugFlag('KvmRun', 'KvmRun entry/exit diagnostics') 604120Sgblack@eecs.umich.edu DebugFlag('KvmTimer', 'KVM timing') 614120Sgblack@eecs.umich.edu 624120Sgblack@eecs.umich.edu CompoundFlag('KvmAll', [ 'Kvm', 'KvmContext', 'KvmRun', 634120Sgblack@eecs.umich.edu 'KvmIO', 'KvmInt', 'KvmTimer' ], 644120Sgblack@eecs.umich.edu 'All KVM debug flags') 654120Sgblack@eecs.umich.edu