SConscript revision 11642:46cffde5d8a6
11758Ssaidi@eecs.umich.edu# -*- mode:python -*-
21758Ssaidi@eecs.umich.edu
31758Ssaidi@eecs.umich.edu#
41758Ssaidi@eecs.umich.edu#  Copyright (c) 2015 Advanced Micro Devices, Inc.
51758Ssaidi@eecs.umich.edu#  All rights reserved.
61758Ssaidi@eecs.umich.edu#
71758Ssaidi@eecs.umich.edu#  For use for simulation and test purposes only
81758Ssaidi@eecs.umich.edu#
91758Ssaidi@eecs.umich.edu#  Redistribution and use in source and binary forms, with or without
101758Ssaidi@eecs.umich.edu#  modification, are permitted provided that the following conditions are met:
111758Ssaidi@eecs.umich.edu#
121758Ssaidi@eecs.umich.edu#  1. Redistributions of source code must retain the above copyright notice,
131758Ssaidi@eecs.umich.edu#  this list of conditions and the following disclaimer.
141758Ssaidi@eecs.umich.edu#
151758Ssaidi@eecs.umich.edu#  2. Redistributions in binary form must reproduce the above copyright notice,
161758Ssaidi@eecs.umich.edu#  this list of conditions and the following disclaimer in the documentation
171758Ssaidi@eecs.umich.edu#  and/or other materials provided with the distribution.
181758Ssaidi@eecs.umich.edu#
191758Ssaidi@eecs.umich.edu#  3. Neither the name of the copyright holder nor the names of its contributors
201758Ssaidi@eecs.umich.edu#  may be used to endorse or promote products derived from this software
211758Ssaidi@eecs.umich.edu#  without specific prior written permission.
221758Ssaidi@eecs.umich.edu#
231758Ssaidi@eecs.umich.edu#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
241758Ssaidi@eecs.umich.edu#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
251758Ssaidi@eecs.umich.edu#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
261758Ssaidi@eecs.umich.edu#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
271049Sbinkertn@umich.edu#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
281049Sbinkertn@umich.edu#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
291049Sbinkertn@umich.edu#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
301929Sbinkertn@umich.edu#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
311929Sbinkertn@umich.edu#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
321929Sbinkertn@umich.edu#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
331049Sbinkertn@umich.edu#  POSSIBILITY OF SUCH DAMAGE.
341929Sbinkertn@umich.edu#
351049Sbinkertn@umich.edu#  Author: Anthony Gutierrez
361929Sbinkertn@umich.edu#
371929Sbinkertn@umich.edu
381929Sbinkertn@umich.eduImport('*')
391929Sbinkertn@umich.edu
401049Sbinkertn@umich.eduif not env['BUILD_GPU']:
411929Sbinkertn@umich.edu    Return()
421929Sbinkertn@umich.edu
431929Sbinkertn@umich.eduSimObject('GPU.py')
441929Sbinkertn@umich.eduSimObject('LdsState.py')
451049Sbinkertn@umich.eduSimObject('X86GPUTLB.py')
461929Sbinkertn@umich.edu
471929Sbinkertn@umich.eduif env['TARGET_GPU_ISA'] == 'hsail':
481929Sbinkertn@umich.edu    Source('brig_object.cc')
491049Sbinkertn@umich.edu    Source('hsail_code.cc')
501929Sbinkertn@umich.edu
511929Sbinkertn@umich.eduSource('cl_driver.cc')
521929Sbinkertn@umich.eduSource('compute_unit.cc')
531929Sbinkertn@umich.eduSource('condition_register_state.cc')
541929Sbinkertn@umich.eduSource('dispatcher.cc')
551929Sbinkertn@umich.eduSource('exec_stage.cc')
561929Sbinkertn@umich.eduSource('fetch_stage.cc')
571929Sbinkertn@umich.eduSource('fetch_unit.cc')
581049Sbinkertn@umich.eduSource('global_memory_pipeline.cc')
591049Sbinkertn@umich.eduSource('gpu_dyn_inst.cc')
601929Sbinkertn@umich.eduSource('gpu_exec_context.cc')
611929Sbinkertn@umich.eduSource('gpu_static_inst.cc')
621049Sbinkertn@umich.eduSource('gpu_tlb.cc')
631929Sbinkertn@umich.eduSource('hsa_object.cc')
641929Sbinkertn@umich.eduSource('kernel_cfg.cc')
651929Sbinkertn@umich.eduSource('lds_state.cc')
661049Sbinkertn@umich.eduSource('local_memory_pipeline.cc')
671929Sbinkertn@umich.eduSource('of_scheduling_policy.cc')
681929Sbinkertn@umich.eduSource('pool_manager.cc')
691929Sbinkertn@umich.eduSource('rr_scheduling_policy.cc')
701929Sbinkertn@umich.eduSource('schedule_stage.cc')
711929Sbinkertn@umich.eduSource('scheduler.cc')
721049Sbinkertn@umich.eduSource('scoreboard_check_stage.cc')
731929Sbinkertn@umich.eduSource('shader.cc')
741929Sbinkertn@umich.eduSource('simple_pool_manager.cc')
751929Sbinkertn@umich.eduSource('tlb_coalescer.cc')
761929Sbinkertn@umich.eduSource('vector_register_file.cc')
771929Sbinkertn@umich.eduSource('vector_register_state.cc')
781929Sbinkertn@umich.eduSource('wavefront.cc')
791929Sbinkertn@umich.edu
801929Sbinkertn@umich.eduDebugFlag('BRIG')
811929Sbinkertn@umich.eduDebugFlag('GPUCoalescer')
821929Sbinkertn@umich.eduDebugFlag('GPUDisp')
831929Sbinkertn@umich.eduDebugFlag('GPUExec')
841929Sbinkertn@umich.eduDebugFlag('GPUFetch')
851049Sbinkertn@umich.eduDebugFlag('GPUHsailCFInfo')
861929Sbinkertn@umich.eduDebugFlag('GPUMem')
871929Sbinkertn@umich.eduDebugFlag('GPUPort')
881929Sbinkertn@umich.eduDebugFlag('GPUPrefetch')
891929Sbinkertn@umich.eduDebugFlag('GPUReg')
901929Sbinkertn@umich.eduDebugFlag('GPUSync')
911929Sbinkertn@umich.eduDebugFlag('GPUTLB')
921929Sbinkertn@umich.eduDebugFlag('GPUVRF')
931929Sbinkertn@umich.eduDebugFlag('HSALoader')
941929Sbinkertn@umich.eduDebugFlag('HSAIL')
951929Sbinkertn@umich.eduDebugFlag('HSAILObject')
961929Sbinkertn@umich.eduDebugFlag('Predictor')
971929Sbinkertn@umich.eduDebugFlag('WavefrontStack')
981929Sbinkertn@umich.edu
991929Sbinkertn@umich.eduCompoundFlag('GPUALL', ['GPUCoalescer', 'GPUDisp', 'GPUExec', 'GPUFetch',
1001929Sbinkertn@umich.edu                        'GPUMem', 'GPUPort', 'GPUSync', 'GPUTLB', 'HSAIL',
1011929Sbinkertn@umich.edu                        'GPUVRF'])
1021929Sbinkertn@umich.edu