SConscript revision 12312
13534Sgblack@eecs.umich.edu# -*- mode:python -*- 23534Sgblack@eecs.umich.edu 33534Sgblack@eecs.umich.edu# 43534Sgblack@eecs.umich.edu# Copyright (c) 2015 Advanced Micro Devices, Inc. 53534Sgblack@eecs.umich.edu# All rights reserved. 63534Sgblack@eecs.umich.edu# 73534Sgblack@eecs.umich.edu# For use for simulation and test purposes only 83534Sgblack@eecs.umich.edu# 93534Sgblack@eecs.umich.edu# Redistribution and use in source and binary forms, with or without 103534Sgblack@eecs.umich.edu# modification, are permitted provided that the following conditions are met: 113534Sgblack@eecs.umich.edu# 123534Sgblack@eecs.umich.edu# 1. Redistributions of source code must retain the above copyright notice, 133534Sgblack@eecs.umich.edu# this list of conditions and the following disclaimer. 143534Sgblack@eecs.umich.edu# 153534Sgblack@eecs.umich.edu# 2. Redistributions in binary form must reproduce the above copyright notice, 163534Sgblack@eecs.umich.edu# this list of conditions and the following disclaimer in the documentation 173534Sgblack@eecs.umich.edu# and/or other materials provided with the distribution. 183534Sgblack@eecs.umich.edu# 193534Sgblack@eecs.umich.edu# 3. Neither the name of the copyright holder nor the names of its contributors 203534Sgblack@eecs.umich.edu# may be used to endorse or promote products derived from this software 213534Sgblack@eecs.umich.edu# without specific prior written permission. 223534Sgblack@eecs.umich.edu# 233534Sgblack@eecs.umich.edu# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 243534Sgblack@eecs.umich.edu# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 253534Sgblack@eecs.umich.edu# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 263534Sgblack@eecs.umich.edu# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 273534Sgblack@eecs.umich.edu# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 283534Sgblack@eecs.umich.edu# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 293534Sgblack@eecs.umich.edu# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 303534Sgblack@eecs.umich.edu# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 313534Sgblack@eecs.umich.edu# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 324202Sbinkertn@umich.edu# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 333534Sgblack@eecs.umich.edu# POSSIBILITY OF SUCH DAMAGE. 3410069Sandreas.hansson@arm.com# 3510069Sandreas.hansson@arm.com# Author: Anthony Gutierrez 3610069Sandreas.hansson@arm.com# 3711765Sandreas.sandberg@arm.com 3811765Sandreas.sandberg@arm.comImport('*') 3910069Sandreas.hansson@arm.com 4011765Sandreas.sandberg@arm.comif not env['BUILD_GPU']: 4110069Sandreas.hansson@arm.com Return() 429850Sandreas.hansson@arm.com 437768SAli.Saidi@ARM.comSimObject('GPU.py') 447768SAli.Saidi@ARM.comSimObject('GPUStaticInstFlags.py') 458739Sgblack@eecs.umich.eduSimObject('LdsState.py') 468739Sgblack@eecs.umich.eduSimObject('X86GPUTLB.py') 474486Sbinkertn@umich.edu 488739Sgblack@eecs.umich.eduif env['TARGET_GPU_ISA'] == 'hsail': 498739Sgblack@eecs.umich.edu Source('brig_object.cc') 508739Sgblack@eecs.umich.edu Source('hsail_code.cc') 5111012Sandreas.sandberg@arm.com 528739Sgblack@eecs.umich.eduSource('cl_driver.cc') 535192Ssaidi@eecs.umich.eduSource('compute_unit.cc') 548739Sgblack@eecs.umich.eduSource('condition_register_state.cc') 558739Sgblack@eecs.umich.eduSource('dispatcher.cc') 56Source('exec_stage.cc') 57Source('fetch_stage.cc') 58Source('fetch_unit.cc') 59Source('global_memory_pipeline.cc') 60Source('gpu_dyn_inst.cc') 61Source('gpu_exec_context.cc') 62Source('gpu_static_inst.cc') 63Source('gpu_tlb.cc') 64Source('hsa_object.cc') 65Source('kernel_cfg.cc') 66Source('lds_state.cc') 67Source('local_memory_pipeline.cc') 68Source('of_scheduling_policy.cc') 69Source('pool_manager.cc') 70Source('rr_scheduling_policy.cc') 71Source('schedule_stage.cc') 72Source('scheduler.cc') 73Source('scoreboard_check_stage.cc') 74Source('shader.cc') 75Source('simple_pool_manager.cc') 76Source('tlb_coalescer.cc') 77Source('vector_register_file.cc') 78Source('vector_register_state.cc') 79Source('wavefront.cc') 80 81DebugFlag('BRIG') 82DebugFlag('GPUCoalescer') 83DebugFlag('GPUDisp') 84DebugFlag('GPUExec') 85DebugFlag('GPUFetch') 86DebugFlag('GPUHsailCFInfo') 87DebugFlag('GPUMem') 88DebugFlag('GPUPort') 89DebugFlag('GPUPrefetch') 90DebugFlag('GPUReg') 91DebugFlag('GPUSync') 92DebugFlag('GPUTLB') 93DebugFlag('GPUVRF') 94DebugFlag('HSALoader') 95DebugFlag('HSAIL') 96DebugFlag('HSAILObject') 97DebugFlag('Predictor') 98DebugFlag('WavefrontStack') 99 100CompoundFlag('GPUALL', ['GPUCoalescer', 'GPUDisp', 'GPUExec', 'GPUFetch', 101 'GPUMem', 'GPUPort', 'GPUSync', 'GPUTLB', 'HSAIL', 102 'GPUVRF']) 103