bitfields.isa revision 2239
15086Sgblack@eecs.umich.edu// -*- mode:c++ -*-
25086Sgblack@eecs.umich.edu
38466Snilay@cs.wisc.edu////////////////////////////////////////////////////////////////////
45086Sgblack@eecs.umich.edu//
55086Sgblack@eecs.umich.edu// Bitfield definitions.
67087Snate@binkert.org//
77087Snate@binkert.org
87087Snate@binkert.orgdef bitfield OPCODE     <31:26>;
97087Snate@binkert.orgdef bitfield OPCODE_HI  <31:29>;
107087Snate@binkert.orgdef bitfield OPCODE_LO  <28:26>;
117087Snate@binkert.org
127087Snate@binkert.orgdef bitfield REGIMM      <20:16>;
137087Snate@binkert.orgdef bitfield REGIMM_HI   <20:19>;
145086Sgblack@eecs.umich.edudef bitfield REGIMM_LO   <18:16>;
157087Snate@binkert.org
167087Snate@binkert.orgdef bitfield FUNCTION      < 5: 0>;
177087Snate@binkert.orgdef bitfield FUNCTION_HI   < 5: 3>;
187087Snate@binkert.orgdef bitfield FUNCTION_LO   < 2: 0>;
197087Snate@binkert.org
207087Snate@binkert.org// Integer operate format
217087Snate@binkert.orgdef bitfield RT	      <20:16>;
227087Snate@binkert.orgdef bitfield RT_HI    <20:19>;
235086Sgblack@eecs.umich.edudef bitfield RT_LO    <18:16>;
247087Snate@binkert.org
255086Sgblack@eecs.umich.edudef bitfield RS	      <25:21>;
265086Sgblack@eecs.umich.edudef bitfield RS_MSB   <25:25>;
275086Sgblack@eecs.umich.edudef bitfield RS_HI    <25:24>;
285086Sgblack@eecs.umich.edudef bitfield RS_LO    <23:21>;
295086Sgblack@eecs.umich.edu
305086Sgblack@eecs.umich.edudef bitfield RD	      <15:11>;
315086Sgblack@eecs.umich.edu
325086Sgblack@eecs.umich.edudef bitfield INTIMM	<15: 0>; // integer immediate (literal)
335086Sgblack@eecs.umich.edu
345086Sgblack@eecs.umich.edu// Floating-point operate format
355086Sgblack@eecs.umich.edudef bitfield FMT      <25:21>;
365086Sgblack@eecs.umich.edudef bitfield FR       <25:21>;
375086Sgblack@eecs.umich.edudef bitfield FT	      <20:16>;
385086Sgblack@eecs.umich.edudef bitfield FS	      <15:11>;
395086Sgblack@eecs.umich.edudef bitfield FD	      <10:6>;
405086Sgblack@eecs.umich.edu
4111793Sbrandon.potter@amd.comdef bitfield CC       <20:18>;
4211793Sbrandon.potter@amd.comdef bitfield ND       <17:17>;
435647Sgblack@eecs.umich.edudef bitfield TF       <16:16>;
448466Snilay@cs.wisc.edudef bitfield MOVCI    <16:16>;
455135Sgblack@eecs.umich.edudef bitfield MOVCF    <16:16>;
465647Sgblack@eecs.umich.edudef bitfield SRL      <21:21>;
479889Sandreas@sandberg.pp.sedef bitfield SRLV     < 6: 6>;
4811800Sbrandon.potter@amd.comdef bitfield SA       <10: 6>;
495086Sgblack@eecs.umich.edu
505086Sgblack@eecs.umich.edu// CP0 Register Select
515086Sgblack@eecs.umich.edudef bitfield SEL       < 2: 0>;
527707Sgblack@eecs.umich.edu
537707Sgblack@eecs.umich.edu// Interrupts
547707Sgblack@eecs.umich.edudef bitfield SC       < 5: 5>;
5510553Salexandru.dutu@amd.com
569887Sandreas@sandberg.pp.se// Branch format
579887Sandreas@sandberg.pp.sedef bitfield OFFSET <15: 0>; // displacement
589887Sandreas@sandberg.pp.se
599887Sandreas@sandberg.pp.se// Jmp format
609887Sandreas@sandberg.pp.sedef bitfield JMPTARG	<25: 0>;
619887Sandreas@sandberg.pp.sedef bitfield HINT	<10: 6>;
629887Sandreas@sandberg.pp.se
639887Sandreas@sandberg.pp.sedef bitfield SYSCALLCODE <25: 6>;
649887Sandreas@sandberg.pp.sedef bitfield TRAPCODE    <15:13>;
659887Sandreas@sandberg.pp.se
669887Sandreas@sandberg.pp.se// M5 instructions
679887Sandreas@sandberg.pp.sedef bitfield M5FUNC <7:0>;
689887Sandreas@sandberg.pp.se