SConscript revision 11765
14120Sgblack@eecs.umich.edu# -*- mode:python -*-
24120Sgblack@eecs.umich.edu
37087Snate@binkert.org#
47087Snate@binkert.org#  Copyright (c) 2015 Advanced Micro Devices, Inc.
57087Snate@binkert.org#  All rights reserved.
67087Snate@binkert.org#
77087Snate@binkert.org#  For use for simulation and test purposes only
87087Snate@binkert.org#
97087Snate@binkert.org#  Redistribution and use in source and binary forms, with or without
107087Snate@binkert.org#  modification, are permitted provided that the following conditions are met:
117087Snate@binkert.org#
127087Snate@binkert.org#  1. Redistributions of source code must retain the above copyright notice,
137087Snate@binkert.org#  this list of conditions and the following disclaimer.
147087Snate@binkert.org#
154120Sgblack@eecs.umich.edu#  2. Redistributions in binary form must reproduce the above copyright notice,
164120Sgblack@eecs.umich.edu#  this list of conditions and the following disclaimer in the documentation
174120Sgblack@eecs.umich.edu#  and/or other materials provided with the distribution.
184120Sgblack@eecs.umich.edu#
194120Sgblack@eecs.umich.edu#  3. Neither the name of the copyright holder nor the names of its contributors
204120Sgblack@eecs.umich.edu#  may be used to endorse or promote products derived from this software
214120Sgblack@eecs.umich.edu#  without specific prior written permission.
224120Sgblack@eecs.umich.edu#
234120Sgblack@eecs.umich.edu#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
244120Sgblack@eecs.umich.edu#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
254120Sgblack@eecs.umich.edu#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
264120Sgblack@eecs.umich.edu#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
274120Sgblack@eecs.umich.edu#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
284120Sgblack@eecs.umich.edu#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
294120Sgblack@eecs.umich.edu#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
304120Sgblack@eecs.umich.edu#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
314120Sgblack@eecs.umich.edu#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
324120Sgblack@eecs.umich.edu#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
334120Sgblack@eecs.umich.edu#  POSSIBILITY OF SUCH DAMAGE.
344120Sgblack@eecs.umich.edu#
354120Sgblack@eecs.umich.edu#  Author: Anthony Gutierrez
364120Sgblack@eecs.umich.edu#
374120Sgblack@eecs.umich.edu
384120Sgblack@eecs.umich.eduImport('*')
394120Sgblack@eecs.umich.edu
404120Sgblack@eecs.umich.eduif not env['BUILD_GPU']:
414120Sgblack@eecs.umich.edu    Return()
424120Sgblack@eecs.umich.edu
434202Sbinkertn@umich.eduSimObject('GPU.py')
445069Sgblack@eecs.umich.eduSimObject('GPUStaticInstFlags.py')
454202Sbinkertn@umich.eduSimObject('LdsState.py')
465659Sgblack@eecs.umich.eduSimObject('X86GPUTLB.py')
474601Sgblack@eecs.umich.edu
485124Sgblack@eecs.umich.eduif env['TARGET_GPU_ISA'] == 'hsail':
497966Sgblack@eecs.umich.edu    Source('brig_object.cc')
505083Sgblack@eecs.umich.edu    Source('hsail_code.cc')
514679Sgblack@eecs.umich.edu
526515Sgblack@eecs.umich.eduSource('cl_driver.cc')
535083Sgblack@eecs.umich.eduSource('compute_unit.cc')
544679Sgblack@eecs.umich.eduSource('condition_register_state.cc')
554679Sgblack@eecs.umich.eduSource('dispatcher.cc')
568745Sgblack@eecs.umich.eduSource('exec_stage.cc')
576313Sgblack@eecs.umich.eduSource('fetch_stage.cc')
588771Sgblack@eecs.umich.eduSource('fetch_unit.cc')
598771Sgblack@eecs.umich.eduSource('global_memory_pipeline.cc')
608771Sgblack@eecs.umich.eduSource('gpu_dyn_inst.cc')
618771Sgblack@eecs.umich.eduSource('gpu_exec_context.cc')
626365Sgblack@eecs.umich.eduSource('gpu_static_inst.cc')
635124Sgblack@eecs.umich.eduSource('gpu_tlb.cc')
648752Sgblack@eecs.umich.eduSource('hsa_object.cc')
654249Sgblack@eecs.umich.eduSource('kernel_cfg.cc')
664240Sgblack@eecs.umich.eduSource('lds_state.cc')
678771Sgblack@eecs.umich.eduSource('local_memory_pipeline.cc')
684202Sbinkertn@umich.eduSource('of_scheduling_policy.cc')
698771Sgblack@eecs.umich.eduSource('pool_manager.cc')
708771Sgblack@eecs.umich.eduSource('rr_scheduling_policy.cc')
714997Sgblack@eecs.umich.eduSource('schedule_stage.cc')
727624Sgblack@eecs.umich.eduSource('scheduler.cc')
735135Sgblack@eecs.umich.eduSource('scoreboard_check_stage.cc')
748753Sgblack@eecs.umich.eduSource('shader.cc')
754997Sgblack@eecs.umich.eduSource('simple_pool_manager.cc')
768745Sgblack@eecs.umich.eduSource('tlb_coalescer.cc')
776365Sgblack@eecs.umich.eduSource('vector_register_file.cc')
788771Sgblack@eecs.umich.eduSource('vector_register_state.cc')
798740Sgblack@eecs.umich.eduSource('wavefront.cc')
806365Sgblack@eecs.umich.edu
818740Sgblack@eecs.umich.eduDebugFlag('BRIG')
828745Sgblack@eecs.umich.eduDebugFlag('GPUCoalescer')
838752Sgblack@eecs.umich.eduDebugFlag('GPUDisp')
848752Sgblack@eecs.umich.eduDebugFlag('GPUExec')
858335Snate@binkert.orgDebugFlag('GPUFetch')
868335Snate@binkert.orgDebugFlag('GPUHsailCFInfo')
874120Sgblack@eecs.umich.eduDebugFlag('GPUMem')
885069Sgblack@eecs.umich.eduDebugFlag('GPUPort')
895081Sgblack@eecs.umich.eduDebugFlag('GPUPrefetch')
905081Sgblack@eecs.umich.eduDebugFlag('GPUReg')
915081Sgblack@eecs.umich.eduDebugFlag('GPUSync')
925081Sgblack@eecs.umich.eduDebugFlag('GPUTLB')
935081Sgblack@eecs.umich.eduDebugFlag('GPUVRF')
945081Sgblack@eecs.umich.eduDebugFlag('HSALoader')
955081Sgblack@eecs.umich.eduDebugFlag('HSAIL')
965081Sgblack@eecs.umich.eduDebugFlag('HSAILObject')
975081Sgblack@eecs.umich.eduDebugFlag('Predictor')
985081Sgblack@eecs.umich.eduDebugFlag('WavefrontStack')
995081Sgblack@eecs.umich.edu
1005081Sgblack@eecs.umich.eduCompoundFlag('GPUALL', ['GPUCoalescer', 'GPUDisp', 'GPUExec', 'GPUFetch',
1015081Sgblack@eecs.umich.edu                        'GPUMem', 'GPUPort', 'GPUSync', 'GPUTLB', 'HSAIL',
1025081Sgblack@eecs.umich.edu                        'GPUVRF'])
1035081Sgblack@eecs.umich.edu