SConscript revision 13759
12929Sktlim@umich.edu# -*- mode:python -*-
22929Sktlim@umich.edu
32932Sktlim@umich.edu# Copyright (c) 2009, 2012-2013, 2017-2018 ARM Limited
42929Sktlim@umich.edu# All rights reserved.
52929Sktlim@umich.edu#
62929Sktlim@umich.edu# The license below extends only to copyright in the software and shall
72929Sktlim@umich.edu# not be construed as granting a license to any other intellectual
82929Sktlim@umich.edu# property including but not limited to intellectual property relating
92929Sktlim@umich.edu# to a hardware implementation of the functionality of the software
102929Sktlim@umich.edu# licensed hereunder.  You may use the software subject to the license
112929Sktlim@umich.edu# terms below provided that you ensure that this notice is replicated
122929Sktlim@umich.edu# unmodified and in its entirety in all distributions of the software,
132929Sktlim@umich.edu# modified or unmodified, in source code or in binary form.
142929Sktlim@umich.edu#
152929Sktlim@umich.edu# Copyright (c) 2007-2008 The Florida State University
162929Sktlim@umich.edu# All rights reserved.
172929Sktlim@umich.edu#
182929Sktlim@umich.edu# Redistribution and use in source and binary forms, with or without
192929Sktlim@umich.edu# modification, are permitted provided that the following conditions are
202929Sktlim@umich.edu# met: redistributions of source code must retain the above copyright
212929Sktlim@umich.edu# notice, this list of conditions and the following disclaimer;
222929Sktlim@umich.edu# redistributions in binary form must reproduce the above copyright
232929Sktlim@umich.edu# notice, this list of conditions and the following disclaimer in the
242929Sktlim@umich.edu# documentation and/or other materials provided with the distribution;
252929Sktlim@umich.edu# neither the name of the copyright holders nor the names of its
262929Sktlim@umich.edu# contributors may be used to endorse or promote products derived from
272929Sktlim@umich.edu# this software without specific prior written permission.
282932Sktlim@umich.edu#
292932Sktlim@umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
302932Sktlim@umich.edu# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
312929Sktlim@umich.edu# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
326007Ssteve.reinhardt@amd.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
337735SAli.Saidi@ARM.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
342929Sktlim@umich.edu# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
352929Sktlim@umich.edu# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
362929Sktlim@umich.edu# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
372929Sktlim@umich.edu# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
382929Sktlim@umich.edu# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
392929Sktlim@umich.edu# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
402929Sktlim@umich.edu#
418947Sandreas.hansson@arm.com# Authors: Stephen Hines
428947Sandreas.hansson@arm.com#          Ali Saidi
438947Sandreas.hansson@arm.com
442929Sktlim@umich.eduImport('*')
452929Sktlim@umich.edu
462929Sktlim@umich.eduif env['TARGET_ISA'] == 'arm':
472929Sktlim@umich.edu# Workaround for bug in SCons version > 0.97d20071212
482929Sktlim@umich.edu# Scons bug id: 2006 M5 Bug id: 308
492929Sktlim@umich.edu    Dir('isa/formats')
506007Ssteve.reinhardt@amd.com    Source('decoder.cc')
516007Ssteve.reinhardt@amd.com    Source('faults.cc')
526007Ssteve.reinhardt@amd.com    Source('insts/branch.cc')
536007Ssteve.reinhardt@amd.com    Source('insts/branch64.cc')
546007Ssteve.reinhardt@amd.com    Source('insts/data64.cc')
556007Ssteve.reinhardt@amd.com    Source('insts/macromem.cc')
566007Ssteve.reinhardt@amd.com    Source('insts/mem.cc')
576007Ssteve.reinhardt@amd.com    Source('insts/mem64.cc')
586007Ssteve.reinhardt@amd.com    Source('insts/misc.cc')
596007Ssteve.reinhardt@amd.com    Source('insts/misc64.cc')
606007Ssteve.reinhardt@amd.com    Source('insts/pred_inst.cc')
616007Ssteve.reinhardt@amd.com    Source('insts/pseudo.cc')
626007Ssteve.reinhardt@amd.com    Source('insts/static_inst.cc')
636007Ssteve.reinhardt@amd.com    Source('insts/sve.cc')
646007Ssteve.reinhardt@amd.com    Source('insts/vfp.cc')
656007Ssteve.reinhardt@amd.com    Source('insts/fplib.cc')
669435SAndreas.Sandberg@ARM.com    Source('insts/crypto.cc')
679435SAndreas.Sandberg@ARM.com    Source('interrupts.cc')
689435SAndreas.Sandberg@ARM.com    Source('isa.cc')
696007Ssteve.reinhardt@amd.com    Source('isa_device.cc')
706007Ssteve.reinhardt@amd.com    Source('linux/linux.cc')
716007Ssteve.reinhardt@amd.com    Source('linux/process.cc')
726007Ssteve.reinhardt@amd.com    Source('linux/system.cc')
736007Ssteve.reinhardt@amd.com    Source('freebsd/freebsd.cc')
746007Ssteve.reinhardt@amd.com    Source('freebsd/process.cc')
756007Ssteve.reinhardt@amd.com    Source('freebsd/system.cc')
766007Ssteve.reinhardt@amd.com    Source('miscregs.cc')
776007Ssteve.reinhardt@amd.com    Source('nativetrace.cc')
786007Ssteve.reinhardt@amd.com    Source('pmu.cc')
792929Sktlim@umich.edu    Source('process.cc')
802929Sktlim@umich.edu    Source('remote_gdb.cc')
812929Sktlim@umich.edu    Source('semihosting.cc')
826007Ssteve.reinhardt@amd.com    Source('stacktrace.cc')
836007Ssteve.reinhardt@amd.com    Source('system.cc')
846007Ssteve.reinhardt@amd.com    Source('table_walker.cc')
859781Sandreas.hansson@arm.com    Source('stage2_mmu.cc')
866007Ssteve.reinhardt@amd.com    Source('stage2_lookup.cc')
876007Ssteve.reinhardt@amd.com    Source('tlb.cc')
882929Sktlim@umich.edu    Source('tlbi_op.cc')
892929Sktlim@umich.edu    Source('utility.cc')
902929Sktlim@umich.edu    Source('vtophys.cc')
912929Sktlim@umich.edu
922929Sktlim@umich.edu    SimObject('ArmInterrupts.py')
936011Ssteve.reinhardt@amd.com    SimObject('ArmISA.py')
946007Ssteve.reinhardt@amd.com    SimObject('ArmNativeTrace.py')
956007Ssteve.reinhardt@amd.com    SimObject('ArmSemihosting.py')
966007Ssteve.reinhardt@amd.com    SimObject('ArmSystem.py')
976007Ssteve.reinhardt@amd.com    SimObject('ArmTLB.py')
986007Ssteve.reinhardt@amd.com    SimObject('ArmPMU.py')
996007Ssteve.reinhardt@amd.com
1006007Ssteve.reinhardt@amd.com    DebugFlag('Arm')
1016007Ssteve.reinhardt@amd.com    DebugFlag('Semihosting')
1026007Ssteve.reinhardt@amd.com    DebugFlag('Decoder', "Instructions returned by the predecoder")
1036007Ssteve.reinhardt@amd.com    DebugFlag('Faults', "Trace Exceptions, interrupts, svc/swi")
1046007Ssteve.reinhardt@amd.com    DebugFlag('PMUVerbose', "Performance Monitor")
1056007Ssteve.reinhardt@amd.com    DebugFlag('TLBVerbose')
1066007Ssteve.reinhardt@amd.com
10710384SCurtis.Dunham@arm.com    # Add files generated by the ISA description.
10810384SCurtis.Dunham@arm.com    ISADesc('isa/main.isa', decoder_splits=3, exec_splits=6)
10910384SCurtis.Dunham@arm.com
11010384SCurtis.Dunham@arm.com    GdbXml('arm/arm-with-neon.xml', 'gdb_xml_arm_target')
1116007Ssteve.reinhardt@amd.com    GdbXml('arm/arm-core.xml', 'gdb_xml_arm_core')
1129781Sandreas.hansson@arm.com    GdbXml('arm/arm-vfpv3.xml', 'gdb_xml_arm_vfpv3')
1139781Sandreas.hansson@arm.com    GdbXml('aarch64.xml', 'gdb_xml_aarch64_target')
1149781Sandreas.hansson@arm.com    GdbXml('aarch64-core.xml', 'gdb_xml_aarch64_core')
1159781Sandreas.hansson@arm.com    GdbXml('aarch64-fpu.xml', 'gdb_xml_aarch64_fpu')
1167735SAli.Saidi@ARM.com