bitfields.isa revision 6275
16167SN/A// -*- mode:c++ -*-
26167SN/A
36167SN/A// Copyright (c) 2007-2008 The Florida State University
410036SAli.Saidi@ARM.com// All rights reserved.
58835SAli.Saidi@ARM.com//
610036SAli.Saidi@ARM.com// Redistribution and use in source and binary forms, with or without
77935SN/A// modification, are permitted provided that the following conditions are
87935SN/A// met: redistributions of source code must retain the above copyright
97935SN/A// notice, this list of conditions and the following disclaimer;
106167SN/A// redistributions in binary form must reproduce the above copyright
116167SN/A// notice, this list of conditions and the following disclaimer in the
126167SN/A// documentation and/or other materials provided with the distribution;
1310526Snilay@cs.wisc.edu// neither the name of the copyright holders nor the names of its
148835SAli.Saidi@ARM.com// contributors may be used to endorse or promote products derived from
159864Snilay@cs.wisc.edu// this software without specific prior written permission.
169864Snilay@cs.wisc.edu//
1710036SAli.Saidi@ARM.com// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
188835SAli.Saidi@ARM.com// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
198835SAli.Saidi@ARM.com// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
2010315Snilay@cs.wisc.edu// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
218835SAli.Saidi@ARM.com// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
2210093Snilay@cs.wisc.edu// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
237935SN/A// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
249864Snilay@cs.wisc.edu// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
2510526Snilay@cs.wisc.edu// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
268721SN/A// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
278835SAli.Saidi@ARM.com// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
288835SAli.Saidi@ARM.com//
297935SN/A// Authors: Stephen Hines
307935SN/A
317935SN/A////////////////////////////////////////////////////////////////////
327935SN/A//
337935SN/A// Bitfield definitions.
347935SN/A//
357935SN/A
368983Snate@binkert.org// Opcode fields
376167SN/Adef bitfield ENCODING      encoding;
389864Snilay@cs.wisc.edudef bitfield OPCODE        opcode;
399864Snilay@cs.wisc.edudef bitfield MEDIA_OPCODE  mediaOpcode;
409864Snilay@cs.wisc.edudef bitfield MEDIA_OPCODE2 mediaOpcode2;
4110315Snilay@cs.wisc.edudef bitfield OPCODE_24	   opcode24;
4210036SAli.Saidi@ARM.comdef bitfield OPCODE_23_20  opcode23_20;
4310315Snilay@cs.wisc.edudef bitfield OPCODE_23_21  opcode23_21;
449864Snilay@cs.wisc.edudef bitfield OPCODE_22     opcode22;
459864Snilay@cs.wisc.edudef bitfield OPCODE_19	   opcode19;
466167SN/Adef bitfield OPCODE_15_12  opcode15_12;
476167SN/Adef bitfield OPCODE_15	   opcode15;
489864Snilay@cs.wisc.edudef bitfield MISC_OPCODE   miscOpcode;
4910093Snilay@cs.wisc.edudef bitfield OPCODE_7      opcode7;
506167SN/Adef bitfield OPCODE_4      opcode4;
519864Snilay@cs.wisc.edu
526167SN/Adef bitfield IS_MISC       isMisc;
536167SN/Adef bitfield SEVEN_AND_FOUR sevenAndFour;
548835SAli.Saidi@ARM.com
556167SN/A// Other
566167SN/Adef bitfield COND_CODE     condCode;
5710036SAli.Saidi@ARM.comdef bitfield S_FIELD       sField;
586167SN/Adef bitfield RN            rn;
596167SN/Adef bitfield RD            rd;
608835SAli.Saidi@ARM.comdef bitfield SHIFT_SIZE    shiftSize;
619469Snilay@cs.wisc.edudef bitfield SHIFT         shift;
626167SN/Adef bitfield RM            rm;
636167SN/A
646167SN/Adef bitfield RS            rs;
656167SN/A
666167SN/Adef bitfield PUSWL         puswl;
676167SN/Adef bitfield PREPOST       puswl.prepost;
688835SAli.Saidi@ARM.comdef bitfield UP               puswl.up;
696167SN/Adef bitfield PSRUSER       puswl.psruser;
709864Snilay@cs.wisc.edudef bitfield WRITEBACK     puswl.writeback;
7110229Snilay@cs.wisc.edudef bitfield LOADOP        puswl.loadOp;
729469Snilay@cs.wisc.edu
736167SN/Adef bitfield PUBWL         pubwl;
746167SN/A
756167SN/Adef bitfield IMM           imm;
769469Snilay@cs.wisc.edu
779469Snilay@cs.wisc.edudef bitfield IMMED_11_0    immed11_0;
786167SN/A
799864Snilay@cs.wisc.edudef bitfield IMMED_HI_11_8 immedHi11_8;
809864Snilay@cs.wisc.edudef bitfield IMMED_LO_3_0  immedLo3_0;
819864Snilay@cs.wisc.edu
8210315Snilay@cs.wisc.edudef bitfield IMMED_23_0    immed23_0;
8310036SAli.Saidi@ARM.com
8410315Snilay@cs.wisc.edudef bitfield CPNUM	   cpNum;
859864Snilay@cs.wisc.edu// Note that FP Regs are only 3 bits
869864Snilay@cs.wisc.edudef bitfield FN		   fn;
876167SN/Adef bitfield FD		   fd;
886167SN/Adef bitfield FPREGIMM	   fpRegImm;
8910036SAli.Saidi@ARM.com// We can just use 3:0 for FM since the hard-wired FP regs are handled in
906167SN/A// float_regfile.hh
916167SN/Adef bitfield FM		   fm;
928835SAli.Saidi@ARM.comdef bitfield FPIMM	   fpImm;
938835SAli.Saidi@ARM.comdef bitfield PUNWL	   punwl;
9410036SAli.Saidi@ARM.com
958835SAli.Saidi@ARM.com// M5 instructions
969469Snilay@cs.wisc.edudef bitfield M5FUNC        m5Func;
979469Snilay@cs.wisc.edu
9810036SAli.Saidi@ARM.com