bitfields.isa revision 2686
12221SN/A// -*- mode:c++ -*-
22221SN/A
32221SN/A////////////////////////////////////////////////////////////////////
42221SN/A//
52221SN/A// Bitfield definitions.
62221SN/A//
72221SN/A
82221SN/Adef bitfield OPCODE     <31:26>;
92221SN/Adef bitfield OPCODE_HI  <31:29>;
102221SN/Adef bitfield OPCODE_LO  <28:26>;
112221SN/A
122221SN/Adef bitfield REGIMM      <20:16>;
132221SN/Adef bitfield REGIMM_HI   <20:19>;
142221SN/Adef bitfield REGIMM_LO   <18:16>;
152221SN/A
162221SN/Adef bitfield FUNCTION      < 5: 0>;
172221SN/Adef bitfield FUNCTION_HI   < 5: 3>;
182221SN/Adef bitfield FUNCTION_LO   < 2: 0>;
192221SN/A
202221SN/Adef bitfield RS	      <25:21>;
212221SN/Adef bitfield RS_MSB   <25:25>;
222221SN/Adef bitfield RS_HI    <25:24>;
232221SN/Adef bitfield RS_LO    <23:21>;
242221SN/Adef bitfield RS_SRL   <25:22>;
252221SN/Adef bitfield RS_RT    <25:16>;
262221SN/Adef bitfield RT	      <20:16>;
272665Ssaidi@eecs.umich.edudef bitfield RT_HI    <20:19>;
282665Ssaidi@eecs.umich.edudef bitfield RT_LO    <18:16>;
292665Ssaidi@eecs.umich.edudef bitfield RT_RD    <20:11>;
302221SN/Adef bitfield RD	      <15:11>;
312221SN/A
323415Sgblack@eecs.umich.edudef bitfield INTIMM	  <15: 0>;
333415Sgblack@eecs.umich.edu
342223SN/A// Floating-point operate format
353415Sgblack@eecs.umich.edudef bitfield FMT      <25:21>;
363578Sgblack@eecs.umich.edudef bitfield FR       <25:21>;
373415Sgblack@eecs.umich.edudef bitfield FT	      <20:16>;
383415Sgblack@eecs.umich.edudef bitfield FS	      <15:11>;
393523Sgblack@eecs.umich.edudef bitfield FD	      <10:6>;
403415Sgblack@eecs.umich.edu
412680Sktlim@umich.edudef bitfield ND       <17:17>;
422800Ssaidi@eecs.umich.edudef bitfield TF       <16:16>;
433523Sgblack@eecs.umich.edudef bitfield MOVCI    <16:16>;
443415Sgblack@eecs.umich.edudef bitfield MOVCF    <16:16>;
452800Ssaidi@eecs.umich.edudef bitfield SRL      <21:21>;
462800Ssaidi@eecs.umich.edudef bitfield SRLV     < 6: 6>;
472221SN/Adef bitfield SA       <10: 6>;
483415Sgblack@eecs.umich.edu
493415Sgblack@eecs.umich.edu// Floating Point Condition Codes
502223SN/Adef bitfield CC <10:8>;
512221SN/Adef bitfield BRANCH_CC <20:18>;
522221SN/A
533573Sgblack@eecs.umich.edu// CP0 Register Select
543576Sgblack@eecs.umich.edudef bitfield SEL       < 2: 0>;
553576Sgblack@eecs.umich.edu
562221SN/A// Interrupts
573573Sgblack@eecs.umich.edudef bitfield SC       < 5: 5>;
583576Sgblack@eecs.umich.edu
593576Sgblack@eecs.umich.edu// Branch format
602221SN/Adef bitfield OFFSET <15: 0>; // displacement
613573Sgblack@eecs.umich.edu
623576Sgblack@eecs.umich.edu// Jmp format
633576Sgblack@eecs.umich.edudef bitfield JMPTARG	<25: 0>;
642221SN/Adef bitfield HINT	<10: 6>;
653573Sgblack@eecs.umich.edu
663576Sgblack@eecs.umich.edudef bitfield SYSCALLCODE <25: 6>;
673576Sgblack@eecs.umich.edudef bitfield TRAPCODE    <15:13>;
682221SN/A
693573Sgblack@eecs.umich.edu// EXT/INS instructions
703576Sgblack@eecs.umich.edudef bitfield MSB	<15:11>;
713576Sgblack@eecs.umich.edudef bitfield LSB	<10: 6>;
722221SN/A
733573Sgblack@eecs.umich.edu// M5 instructions
743576Sgblack@eecs.umich.edudef bitfield M5FUNC <7:0>;
753576Sgblack@eecs.umich.edu