op_class.hh revision 10814:46b6043bd32c
16313Sgblack@eecs.umich.edu/*
26313Sgblack@eecs.umich.edu * Copyright (c) 2010 ARM Limited
36313Sgblack@eecs.umich.edu * All rights reserved
46313Sgblack@eecs.umich.edu *
56313Sgblack@eecs.umich.edu * The license below extends only to copyright in the software and shall
66313Sgblack@eecs.umich.edu * not be construed as granting a license to any other intellectual
76313Sgblack@eecs.umich.edu * property including but not limited to intellectual property relating
86313Sgblack@eecs.umich.edu * to a hardware implementation of the functionality of the software
96313Sgblack@eecs.umich.edu * licensed hereunder.  You may use the software subject to the license
106313Sgblack@eecs.umich.edu * terms below provided that you ensure that this notice is replicated
116313Sgblack@eecs.umich.edu * unmodified and in its entirety in all distributions of the software,
126313Sgblack@eecs.umich.edu * modified or unmodified, in source code or in binary form.
136313Sgblack@eecs.umich.edu *
146313Sgblack@eecs.umich.edu * Copyright (c) 2003-2005 The Regents of The University of Michigan
156313Sgblack@eecs.umich.edu * All rights reserved.
166313Sgblack@eecs.umich.edu *
176313Sgblack@eecs.umich.edu * Redistribution and use in source and binary forms, with or without
186313Sgblack@eecs.umich.edu * modification, are permitted provided that the following conditions are
196313Sgblack@eecs.umich.edu * met: redistributions of source code must retain the above copyright
206313Sgblack@eecs.umich.edu * notice, this list of conditions and the following disclaimer;
216313Sgblack@eecs.umich.edu * redistributions in binary form must reproduce the above copyright
226313Sgblack@eecs.umich.edu * notice, this list of conditions and the following disclaimer in the
236313Sgblack@eecs.umich.edu * documentation and/or other materials provided with the distribution;
246313Sgblack@eecs.umich.edu * neither the name of the copyright holders nor the names of its
256313Sgblack@eecs.umich.edu * contributors may be used to endorse or promote products derived from
266313Sgblack@eecs.umich.edu * this software without specific prior written permission.
276313Sgblack@eecs.umich.edu *
286313Sgblack@eecs.umich.edu * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
296313Sgblack@eecs.umich.edu * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
306313Sgblack@eecs.umich.edu * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
316313Sgblack@eecs.umich.edu * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
326313Sgblack@eecs.umich.edu * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
336313Sgblack@eecs.umich.edu * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
346335Sgblack@eecs.umich.edu * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
356313Sgblack@eecs.umich.edu * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
366335Sgblack@eecs.umich.edu * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
376335Sgblack@eecs.umich.edu * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
386335Sgblack@eecs.umich.edu * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
396335Sgblack@eecs.umich.edu *
406335Sgblack@eecs.umich.edu * Authors: Nathan Binkert
416313Sgblack@eecs.umich.edu */
426313Sgblack@eecs.umich.edu
436313Sgblack@eecs.umich.edu#ifndef __CPU__OP_CLASS_HH__
446335Sgblack@eecs.umich.edu#define __CPU__OP_CLASS_HH__
456313Sgblack@eecs.umich.edu
466313Sgblack@eecs.umich.edu#include "enums/OpClass.hh"
476313Sgblack@eecs.umich.edu
486313Sgblack@eecs.umich.edu/*
496313Sgblack@eecs.umich.edu * Do a bunch of wonky stuff to maintain backward compatability so I
506335Sgblack@eecs.umich.edu * don't have to change code in a zillion places.
516335Sgblack@eecs.umich.edu */
526335Sgblack@eecs.umich.eduusing Enums::OpClass;
536335Sgblack@eecs.umich.eduusing Enums::No_OpClass;
546335Sgblack@eecs.umich.edu
556335Sgblack@eecs.umich.edustatic const OpClass IntAluOp = Enums::IntAlu;
566335Sgblack@eecs.umich.edustatic const OpClass IntMultOp = Enums::IntMult;
576335Sgblack@eecs.umich.edustatic const OpClass IntDivOp = Enums::IntDiv;
586335Sgblack@eecs.umich.edustatic const OpClass FloatAddOp = Enums::FloatAdd;
596335Sgblack@eecs.umich.edustatic const OpClass FloatCmpOp = Enums::FloatCmp;
606335Sgblack@eecs.umich.edustatic const OpClass FloatCvtOp = Enums::FloatCvt;
616335Sgblack@eecs.umich.edustatic const OpClass FloatMultOp = Enums::FloatMult;
626335Sgblack@eecs.umich.edustatic const OpClass FloatDivOp = Enums::FloatDiv;
636335Sgblack@eecs.umich.edustatic const OpClass FloatSqrtOp = Enums::FloatSqrt;
646335Sgblack@eecs.umich.edustatic const OpClass SimdAddOp = Enums::SimdAdd;
656335Sgblack@eecs.umich.edustatic const OpClass SimdAddAccOp = Enums::SimdAddAcc;
666335Sgblack@eecs.umich.edustatic const OpClass SimdAluOp = Enums::SimdAlu;
676335Sgblack@eecs.umich.edustatic const OpClass SimdCmpOp = Enums::SimdCmp;
686335Sgblack@eecs.umich.edustatic const OpClass SimdCvtOp = Enums::SimdCvt;
696335Sgblack@eecs.umich.edustatic const OpClass SimdMiscOp = Enums::SimdMisc;
706335Sgblack@eecs.umich.edustatic const OpClass SimdMultOp = Enums::SimdMult;
716335Sgblack@eecs.umich.edustatic const OpClass SimdMultAccOp = Enums::SimdMultAcc;
726335Sgblack@eecs.umich.edustatic const OpClass SimdShiftOp = Enums::SimdShift;
736335Sgblack@eecs.umich.edustatic const OpClass SimdShiftAccOp = Enums::SimdShiftAcc;
746335Sgblack@eecs.umich.edustatic const OpClass SimdSqrtOp = Enums::SimdSqrt;
756335Sgblack@eecs.umich.edustatic const OpClass SimdFloatAddOp = Enums::SimdFloatAdd;
766335Sgblack@eecs.umich.edustatic const OpClass SimdFloatAluOp = Enums::SimdFloatAlu;
776335Sgblack@eecs.umich.edustatic const OpClass SimdFloatCmpOp = Enums::SimdFloatCmp;
786335Sgblack@eecs.umich.edustatic const OpClass SimdFloatCvtOp = Enums::SimdFloatCvt;
796335Sgblack@eecs.umich.edustatic const OpClass SimdFloatDivOp = Enums::SimdFloatDiv;
806335Sgblack@eecs.umich.edustatic const OpClass SimdFloatMiscOp = Enums::SimdFloatMisc;
816335Sgblack@eecs.umich.edustatic const OpClass SimdFloatMultOp = Enums::SimdFloatMult;
826335Sgblack@eecs.umich.edustatic const OpClass SimdFloatMultAccOp = Enums::SimdFloatMultAcc;
836335Sgblack@eecs.umich.edustatic const OpClass SimdFloatSqrtOp = Enums::SimdFloatSqrt;
846335Sgblack@eecs.umich.edustatic const OpClass MemReadOp = Enums::MemRead;
856335Sgblack@eecs.umich.edustatic const OpClass MemWriteOp = Enums::MemWrite;
866335Sgblack@eecs.umich.edustatic const OpClass IprAccessOp = Enums::IprAccess;
876335Sgblack@eecs.umich.edustatic const OpClass InstPrefetchOp = Enums::InstPrefetch;
886335Sgblack@eecs.umich.edustatic const OpClass Num_OpClasses = Enums::Num_OpClass;
896335Sgblack@eecs.umich.edu
906335Sgblack@eecs.umich.edu#endif // __CPU__OP_CLASS_HH__
916335Sgblack@eecs.umich.edu