1# -*- mode:python -*- 2 3# Copyright (c) 2015-2018 Advanced Micro Devices, Inc. 4# All rights reserved. 5# 6# For use for simulation and test purposes only 7# 8# Redistribution and use in source and binary forms, with or without 9# modification, are permitted provided that the following conditions are met: 10# 11# 1. Redistributions of source code must retain the above copyright notice, 12# this list of conditions and the following disclaimer. 13# 14# 2. Redistributions in binary form must reproduce the above copyright notice, 15# this list of conditions and the following disclaimer in the documentation 16# and/or other materials provided with the distribution. 17# 18# 3. Neither the name of the copyright holder nor the names of its 19# contributors may be used to endorse or promote products derived from this 20# software without specific prior written permission. 21# 22# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 23# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 24# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 25# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE 26# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 27# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 28# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 29# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 30# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 31# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 32# POSSIBILITY OF SUCH DAMAGE. 33# 34# Authors: Anthony Gutierrez 35 36Import('*') 37 38if not env['BUILD_GPU']: 39 Return() 40 41SimObject('GPU.py') 42SimObject('GPUStaticInstFlags.py') 43SimObject('LdsState.py') 44SimObject('X86GPUTLB.py') 45 46if env['TARGET_GPU_ISA'] == 'hsail': 47 Source('brig_object.cc') 48 Source('hsail_code.cc') 49 50Source('cl_driver.cc') 51Source('compute_unit.cc') 52Source('condition_register_state.cc') 53Source('dispatcher.cc') 54Source('exec_stage.cc') 55Source('fetch_stage.cc') 56Source('fetch_unit.cc') 57Source('global_memory_pipeline.cc') 58Source('gpu_dyn_inst.cc') 59Source('gpu_exec_context.cc') 60Source('gpu_static_inst.cc') 61Source('gpu_tlb.cc') 62Source('hsa_object.cc') 63Source('kernel_cfg.cc') 64Source('lds_state.cc') 65Source('local_memory_pipeline.cc') 66Source('pool_manager.cc') 67Source('schedule_stage.cc') 68Source('scheduler.cc') 69Source('scoreboard_check_stage.cc') 70Source('shader.cc') 71Source('simple_pool_manager.cc') 72Source('tlb_coalescer.cc') 73Source('vector_register_file.cc') 74Source('vector_register_state.cc') 75Source('wavefront.cc') 76 77DebugFlag('BRIG') 78DebugFlag('GPUCoalescer') 79DebugFlag('GPUDisp') 80DebugFlag('GPUExec') 81DebugFlag('GPUFetch') 82DebugFlag('GPUHsailCFInfo') 83DebugFlag('GPUMem') 84DebugFlag('GPUPort') 85DebugFlag('GPUPrefetch') 86DebugFlag('GPUReg') 87DebugFlag('GPUSync') 88DebugFlag('GPUTLB') 89DebugFlag('GPUVRF') 90DebugFlag('HSALoader') 91DebugFlag('HSAIL') 92DebugFlag('HSAILObject') 93DebugFlag('Predictor') 94DebugFlag('WavefrontStack') 95 96CompoundFlag('GPUALL', ['GPUCoalescer', 'GPUDisp', 'GPUExec', 'GPUFetch', 97 'GPUMem', 'GPUPort', 'GPUSync', 'GPUTLB', 'HSAIL', 98 'GPUVRF']) 99