SConscript revision 11308
1955SN/A# -*- mode:python -*-
2955SN/A
31762SN/A#
4955SN/A#  Copyright (c) 2015 Advanced Micro Devices, Inc.
5955SN/A#  All rights reserved.
6955SN/A#
7955SN/A#  For use for simulation and test purposes only
8955SN/A#
9955SN/A#  Redistribution and use in source and binary forms, with or without
10955SN/A#  modification, are permitted provided that the following conditions are met:
11955SN/A#
12955SN/A#  1. Redistributions of source code must retain the above copyright notice,
13955SN/A#  this list of conditions and the following disclaimer.
14955SN/A#
15955SN/A#  2. Redistributions in binary form must reproduce the above copyright notice,
16955SN/A#  this list of conditions and the following disclaimer in the documentation
17955SN/A#  and/or other materials provided with the distribution.
18955SN/A#
19955SN/A#  3. Neither the name of the copyright holder nor the names of its contributors
20955SN/A#  may be used to endorse or promote products derived from this software
21955SN/A#  without specific prior written permission.
22955SN/A#
23955SN/A#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
24955SN/A#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
25955SN/A#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26955SN/A#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
27955SN/A#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
282665Ssaidi@eecs.umich.edu#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
294762Snate@binkert.org#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
30955SN/A#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
315522Snate@binkert.org#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
326143Snate@binkert.org#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
334762Snate@binkert.org#  POSSIBILITY OF SUCH DAMAGE.
345522Snate@binkert.org#
35955SN/A#  Author: Anthony Gutierrez
365522Snate@binkert.org#
3711974Sgabeblack@google.com
38955SN/AImport('*')
395522Snate@binkert.org
404202Sbinkertn@umich.eduif not env['BUILD_GPU']:
415742Snate@binkert.org    Return()
42955SN/A
434381Sbinkertn@umich.eduSimObject('GPU.py')
444381Sbinkertn@umich.eduSimObject('LdsState.py')
4512246Sgabeblack@google.comSimObject('X86GPUTLB.py')
4612246Sgabeblack@google.com
478334Snate@binkert.orgif env['TARGET_GPU_ISA'] == 'hsail':
48955SN/A    Source('brig_object.cc')
49955SN/A    Source('hsail_code.cc')
504202Sbinkertn@umich.edu
51955SN/ASource('cl_driver.cc')
524382Sbinkertn@umich.eduSource('compute_unit.cc')
534382Sbinkertn@umich.eduSource('condition_register_state.cc')
544382Sbinkertn@umich.eduSource('dispatcher.cc')
556654Snate@binkert.orgSource('exec_stage.cc')
565517Snate@binkert.orgSource('fetch_stage.cc')
578614Sgblack@eecs.umich.eduSource('fetch_unit.cc')
587674Snate@binkert.orgSource('global_memory_pipeline.cc')
596143Snate@binkert.orgSource('gpu_dyn_inst.cc')
606143Snate@binkert.orgSource('gpu_exec_context.cc')
616143Snate@binkert.orgSource('gpu_static_inst.cc')
6212302Sgabeblack@google.comSource('gpu_tlb.cc')
6312302Sgabeblack@google.comSource('hsa_object.cc')
6412302Sgabeblack@google.comSource('kernel_cfg.cc')
6512302Sgabeblack@google.comSource('lds_state.cc')
6612302Sgabeblack@google.comSource('local_memory_pipeline.cc')
6712302Sgabeblack@google.comSource('of_scheduling_policy.cc')
6812302Sgabeblack@google.comSource('pool_manager.cc')
6912302Sgabeblack@google.comSource('rr_scheduling_policy.cc')
7012302Sgabeblack@google.comSource('schedule_stage.cc')
7112302Sgabeblack@google.comSource('scheduler.cc')
7212302Sgabeblack@google.comSource('scoreboard_check_stage.cc')
7312302Sgabeblack@google.comSource('shader.cc')
7412302Sgabeblack@google.comSource('simple_pool_manager.cc')
7512302Sgabeblack@google.comSource('tlb_coalescer.cc')
7612302Sgabeblack@google.comSource('vector_register_file.cc')
7712302Sgabeblack@google.comSource('vector_register_state.cc')
7812302Sgabeblack@google.comSource('wavefront.cc')
7912302Sgabeblack@google.com
8012302Sgabeblack@google.comDebugFlag('BRIG')
8112302Sgabeblack@google.comDebugFlag('GPUCoalescer')
8212302Sgabeblack@google.comDebugFlag('GPUDisp')
8312302Sgabeblack@google.comDebugFlag('GPUExec')
8412302Sgabeblack@google.comDebugFlag('GPUFetch')
8512302Sgabeblack@google.comDebugFlag('GPUHsailCFInfo')
8612302Sgabeblack@google.comDebugFlag('GPUMem')
8712302Sgabeblack@google.comDebugFlag('GPUPort')
8812302Sgabeblack@google.comDebugFlag('GPUPrefetch')
8912302Sgabeblack@google.comDebugFlag('GPUReg')
9012302Sgabeblack@google.comDebugFlag('GPUSync')
9111983Sgabeblack@google.comDebugFlag('GPUTLB')
926143Snate@binkert.orgDebugFlag('HSALoader')
938233Snate@binkert.orgDebugFlag('HSAIL')
9412302Sgabeblack@google.comDebugFlag('HSAILObject')
956143Snate@binkert.orgDebugFlag('Predictor')
966143Snate@binkert.orgDebugFlag('WavefrontStack')
9712302Sgabeblack@google.com
984762Snate@binkert.orgCompoundFlag('GPUALL', ['GPUCoalescer', 'GPUDisp', 'GPUExec', 'GPUFetch',
996143Snate@binkert.org                        'GPUMem', 'GPUPort', 'GPUSync', 'GPUTLB', 'HSAIL'])
1008233Snate@binkert.org