18586Sgblack@eecs.umich.edu/* 28586Sgblack@eecs.umich.edu * Copyright (c) 2011 Google 38586Sgblack@eecs.umich.edu * All rights reserved. 48586Sgblack@eecs.umich.edu * 58586Sgblack@eecs.umich.edu * Redistribution and use in source and binary forms, with or without 68586Sgblack@eecs.umich.edu * modification, are permitted provided that the following conditions are 78586Sgblack@eecs.umich.edu * met: redistributions of source code must retain the above copyright 88586Sgblack@eecs.umich.edu * notice, this list of conditions and the following disclaimer; 98586Sgblack@eecs.umich.edu * redistributions in binary form must reproduce the above copyright 108586Sgblack@eecs.umich.edu * notice, this list of conditions and the following disclaimer in the 118586Sgblack@eecs.umich.edu * documentation and/or other materials provided with the distribution; 128586Sgblack@eecs.umich.edu * neither the name of the copyright holders nor the names of its 138586Sgblack@eecs.umich.edu * contributors may be used to endorse or promote products derived from 148586Sgblack@eecs.umich.edu * this software without specific prior written permission. 158586Sgblack@eecs.umich.edu * 168586Sgblack@eecs.umich.edu * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 178586Sgblack@eecs.umich.edu * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 188586Sgblack@eecs.umich.edu * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 198586Sgblack@eecs.umich.edu * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 208586Sgblack@eecs.umich.edu * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 218586Sgblack@eecs.umich.edu * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 228586Sgblack@eecs.umich.edu * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 238586Sgblack@eecs.umich.edu * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 248586Sgblack@eecs.umich.edu * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 258586Sgblack@eecs.umich.edu * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 268586Sgblack@eecs.umich.edu * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 278586Sgblack@eecs.umich.edu * 288586Sgblack@eecs.umich.edu * Authors: Gabe Black 298586Sgblack@eecs.umich.edu */ 308586Sgblack@eecs.umich.edu 318586Sgblack@eecs.umich.edu#ifndef __SIM_FULL_SYSTEM_HH__ 328586Sgblack@eecs.umich.edu#define __SIM_FULL_SYSTEM_HH__ 338586Sgblack@eecs.umich.edu 348901Sandreas.hansson@arm.com/** 358901Sandreas.hansson@arm.com * The FullSystem variable can be used to determine the current mode 368901Sandreas.hansson@arm.com * of simulation. 378901Sandreas.hansson@arm.com */ 388801Sgblack@eecs.umich.eduextern bool FullSystem; 398586Sgblack@eecs.umich.edu 408901Sandreas.hansson@arm.com/** 418901Sandreas.hansson@arm.com * In addition to the boolean flag we make use of an unsigned int 428901Sandreas.hansson@arm.com * since the CPU instruction decoder makes use of the variable in 438901Sandreas.hansson@arm.com * switch statements. A value of 0 signifies syscall emulation, and 448901Sandreas.hansson@arm.com * any other value full system. 458901Sandreas.hansson@arm.com */ 468901Sandreas.hansson@arm.comextern unsigned int FullSystemInt; 478901Sandreas.hansson@arm.com 488586Sgblack@eecs.umich.edu#endif // __SIM_FULL_SYSTEM_HH__ 49