114184Sgabeblack@google.com# -*- mode:python -*- 214184Sgabeblack@google.com 314184Sgabeblack@google.com# Copyright (c) 2009 The Hewlett-Packard Development Company 414184Sgabeblack@google.com# All rights reserved. 514184Sgabeblack@google.com# 614184Sgabeblack@google.com# Redistribution and use in source and binary forms, with or without 714184Sgabeblack@google.com# modification, are permitted provided that the following conditions are 814184Sgabeblack@google.com# met: redistributions of source code must retain the above copyright 914184Sgabeblack@google.com# notice, this list of conditions and the following disclaimer; 1014184Sgabeblack@google.com# redistributions in binary form must reproduce the above copyright 1114184Sgabeblack@google.com# notice, this list of conditions and the following disclaimer in the 1214184Sgabeblack@google.com# documentation and/or other materials provided with the distribution; 1314184Sgabeblack@google.com# neither the name of the copyright holders nor the names of its 1414184Sgabeblack@google.com# contributors may be used to endorse or promote products derived from 1514184Sgabeblack@google.com# this software without specific prior written permission. 1614184Sgabeblack@google.com# 1714184Sgabeblack@google.com# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 1814184Sgabeblack@google.com# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 1914184Sgabeblack@google.com# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 2014184Sgabeblack@google.com# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 2114184Sgabeblack@google.com# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 2214184Sgabeblack@google.com# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 2314184Sgabeblack@google.com# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 2414184Sgabeblack@google.com# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 2514184Sgabeblack@google.com# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 2614184Sgabeblack@google.com# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 2714184Sgabeblack@google.com# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 2814184Sgabeblack@google.com# 2914184Sgabeblack@google.com# Authors: Nathan Binkert 3014184Sgabeblack@google.com 3114184Sgabeblack@google.comimport os 3214184Sgabeblack@google.com 3314184Sgabeblack@google.comImport('*') 3414184Sgabeblack@google.com 3514184Sgabeblack@google.comall_protocols.extend([ 3614184Sgabeblack@google.com 'GPU_VIPER', 3714184Sgabeblack@google.com 'GPU_VIPER_Baseline', 3814184Sgabeblack@google.com 'GPU_VIPER_Region', 3914184Sgabeblack@google.com 'GPU_RfO', 4014184Sgabeblack@google.com 'MOESI_AMD_Base', 4114184Sgabeblack@google.com 'MESI_Two_Level', 4214184Sgabeblack@google.com 'MESI_Three_Level', 4314184Sgabeblack@google.com 'MI_example', 4414184Sgabeblack@google.com 'MOESI_CMP_directory', 4514184Sgabeblack@google.com 'MOESI_CMP_token', 4614184Sgabeblack@google.com 'MOESI_hammer', 4714184Sgabeblack@google.com 'Garnet_standalone', 4814184Sgabeblack@google.com 'None' 4914184Sgabeblack@google.com ]) 5014184Sgabeblack@google.com 5114184Sgabeblack@google.comopt = BoolVariable('SLICC_HTML', 'Create HTML files', False) 5214184Sgabeblack@google.comsticky_vars.AddVariables(opt) 5314184Sgabeblack@google.com 5414184Sgabeblack@google.comprotocol_dirs.append(Dir('.').abspath) 5514184Sgabeblack@google.com 5614184Sgabeblack@google.comprotocol_base = Dir('.') 5714184Sgabeblack@google.comExport('protocol_base') 5814184Sgabeblack@google.com 5914184Sgabeblack@google.comslicc_includes.append('mem/ruby/slicc_interface/RubySlicc_includes.hh') 60