gem5  [DEVELOP-FOR-23.0]
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
misc.hh
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2007-2008 The Hewlett-Packard Development Company
3  * All rights reserved.
4  *
5  * The license below extends only to copyright in the software and shall
6  * not be construed as granting a license to any other intellectual
7  * property including but not limited to intellectual property relating
8  * to a hardware implementation of the functionality of the software
9  * licensed hereunder. You may use the software subject to the license
10  * terms below provided that you ensure that this notice is replicated
11  * unmodified and in its entirety in all distributions of the software,
12  * modified or unmodified, in source code or in binary form.
13  *
14  * Redistribution and use in source and binary forms, with or without
15  * modification, are permitted provided that the following conditions are
16  * met: redistributions of source code must retain the above copyright
17  * notice, this list of conditions and the following disclaimer;
18  * redistributions in binary form must reproduce the above copyright
19  * notice, this list of conditions and the following disclaimer in the
20  * documentation and/or other materials provided with the distribution;
21  * neither the name of the copyright holders nor the names of its
22  * contributors may be used to endorse or promote products derived from
23  * this software without specific prior written permission.
24  *
25  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
26  * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
27  * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
28  * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
29  * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
30  * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
31  * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
32  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
33  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
34  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
35  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
36  */
37 
38 #ifndef __ARCH_X86_MISCREGS_HH__
39 #define __ARCH_X86_MISCREGS_HH__
40 
41 #include "arch/x86/regs/segment.hh"
42 #include "arch/x86/x86_traits.hh"
43 #include "base/bitunion.hh"
44 #include "base/logging.hh"
45 #include "cpu/reg_class.hh"
46 #include "debug/MiscRegs.hh"
47 
48 //These get defined in some system headers (at least termbits.h). That confuses
49 //things here significantly.
50 #undef CR0
51 #undef CR2
52 #undef CR3
53 
54 namespace gem5
55 {
56 namespace X86ISA
57 {
58 
60 {
61  CFBit = 1 << 0,
62  PFBit = 1 << 2,
63  ECFBit = 1 << 3,
64  AFBit = 1 << 4,
65  EZFBit = 1 << 5,
66  ZFBit = 1 << 6,
67  SFBit = 1 << 7,
68  DFBit = 1 << 10,
69  OFBit = 1 << 11
70 };
71 
72 constexpr uint32_t CfofMask = CFBit | OFBit;
73 constexpr uint32_t CcFlagMask = PFBit | AFBit | ZFBit | SFBit;
74 
76 {
77  TFBit = 1 << 8,
78  IFBit = 1 << 9,
79  NTBit = 1 << 14,
80  RFBit = 1 << 16,
81  VMBit = 1 << 17,
82  ACBit = 1 << 18,
83  VIFBit = 1 << 19,
84  VIPBit = 1 << 20,
85  IDBit = 1 << 21
86 };
87 
89 {
90  // Exception Flags
91  IEBit = 1 << 0,
92  DEBit = 1 << 1,
93  ZEBit = 1 << 2,
94  OEBit = 1 << 3,
95  UEBit = 1 << 4,
96  PEBit = 1 << 5,
97 
98  // !Exception Flags
99  StackFaultBit = 1 << 6,
100  ErrSummaryBit = 1 << 7,
101  CC0Bit = 1 << 8,
102  CC1Bit = 1 << 9,
103  CC2Bit = 1 << 10,
104  CC3Bit = 1 << 14,
105  BusyBit = 1 << 15,
106 };
107 
108 namespace misc_reg
109 {
110 
111 enum : RegIndex
112 {
113  // Control registers
114  // Most of these are invalid. See isValid() below.
132 
133  // Debug registers
143 
144  // Flags register
146 
147  //Register to keep handy values like the CPU mode in.
149 
150  /*
151  * Model Specific Registers
152  */
153  // Time stamp counter
155 
157 
161 
165 
167 
172 
183 
194 
206 
208 
210 
221 
232 
243 
254 
255  // Extended feature enable register
257 
261 
263 
265 
267 
274 
281 
283 
288 
293 
296 
301 
302  /*
303  * Segment registers
304  */
305  // Segment selectors
308  Cs,
309  Ss,
310  Ds,
311  Fs,
312  Gs,
313  Hs,
316  Ls,
317  Ms,
318  Tr,
320 
321  // Hidden segment base field
336 
337  // The effective segment base, ie what is actually added to an
338  // address. In 64 bit mode this can be different from the above,
339  // namely 0.
354 
355  // Hidden segment limit field
370 
371  // Hidden segment limit attributes
386 
387  // Floating point control registers
389 
400 
401  //XXX Add "Model-Specific Registers"
402 
404 
405  // "Fake" MSRs for internally implemented devices
407 
409 };
410 
411 static inline bool
413 {
414  return (index >= Cr0 && index < NumRegs &&
415  index != Cr1 &&
416  !(index > Cr4 && index < Cr8) &&
417  !(index > Cr8 && index <= Cr15));
418 }
419 
420 static inline RegIndex
421 cr(int index)
422 {
423  assert(index >= 0 && index < NumCRegs);
424  return CrBase + index;
425 }
426 
427 static inline RegIndex
428 dr(int index)
429 {
430  assert(index >= 0 && index < NumDRegs);
431  return DrBase + index;
432 }
433 
434 static inline RegIndex
436 {
437  assert(index >= 0 && index < (MtrrPhysBaseEnd - MtrrPhysBaseBase));
438  return MtrrPhysBaseBase + index;
439 }
440 
441 static inline RegIndex
443 {
444  assert(index >= 0 && index < (MtrrPhysMaskEnd - MtrrPhysMaskBase));
445  return MtrrPhysMaskBase + index;
446 }
447 
448 static inline RegIndex
450 {
451  assert(index >= 0 && index < (McCtlEnd - McCtlBase));
452  return McCtlBase + index;
453 }
454 
455 static inline RegIndex
457 {
458  assert(index >= 0 && index < (McStatusEnd - McStatusBase));
459  return McStatusBase + index;
460 }
461 
462 static inline RegIndex
464 {
465  assert(index >= 0 && index < (McAddrEnd - McAddrBase));
466  return McAddrBase + index;
467 }
468 
469 static inline RegIndex
471 {
472  assert(index >= 0 && index < (McMiscEnd - McMiscBase));
473  return McMiscBase + index;
474 }
475 
476 static inline RegIndex
478 {
479  assert(index >= 0 && index < (PerfEvtSelEnd - PerfEvtSelBase));
480  return PerfEvtSelBase + index;
481 }
482 
483 static inline RegIndex
485 {
486  assert(index >= 0 && index < (PerfEvtCtrEnd - PerfEvtCtrBase));
487  return PerfEvtCtrBase + index;
488 }
489 
490 static inline RegIndex
492 {
493  assert(index >= 0 && index < (IorrBaseEnd - IorrBaseBase));
494  return IorrBaseBase + index;
495 }
496 
497 static inline RegIndex
499 {
500  assert(index >= 0 && index < (IorrMaskEnd - IorrMaskBase));
501  return IorrMaskBase + index;
502 }
503 
504 static inline RegIndex
506 {
507  assert(index >= 0 && index < segment_idx::NumIdxs);
508  return SegSelBase + index;
509 }
510 
511 static inline RegIndex
513 {
514  assert(index >= 0 && index < segment_idx::NumIdxs);
515  return SegBaseBase + index;
516 }
517 
518 static inline RegIndex
520 {
521  assert(index >= 0 && index < segment_idx::NumIdxs);
522  return SegEffBaseBase + index;
523 }
524 
525 static inline RegIndex
527 {
528  assert(index >= 0 && index < segment_idx::NumIdxs);
529  return SegLimitBase + index;
530 }
531 
532 static inline RegIndex
534 {
535  assert(index >= 0 && index < segment_idx::NumIdxs);
536  return SegAttrBase + index;
537 }
538 
539 } // namespace misc_reg
540 
542  misc_reg::NumRegs, debug::MiscRegs);
543 
548 BitUnion64(CCFlagBits)
549  Bitfield<11> of;
550  Bitfield<7> sf;
551  Bitfield<6> zf;
552  Bitfield<5> ezf;
553  Bitfield<4> af;
554  Bitfield<3> ecf;
555  Bitfield<2> pf;
556  Bitfield<0> cf;
557 EndBitUnion(CCFlagBits)
558 
559 
562 BitUnion64(RFLAGS)
563  Bitfield<21> id; // ID Flag
564  Bitfield<20> vip; // Virtual Interrupt Pending
565  Bitfield<19> vif; // Virtual Interrupt Flag
566  Bitfield<18> ac; // Alignment Check
567  Bitfield<17> vm; // Virtual-8086 Mode
568  Bitfield<16> rf; // Resume Flag
569  Bitfield<14> nt; // Nested Task
570  Bitfield<13, 12> iopl; // I/O Privilege Level
571  Bitfield<11> of; // Overflow Flag
572  Bitfield<10> df; // Direction Flag
573  Bitfield<9> intf; // Interrupt Flag
574  Bitfield<8> tf; // Trap Flag
575  Bitfield<7> sf; // Sign Flag
576  Bitfield<6> zf; // Zero Flag
577  Bitfield<4> af; // Auxiliary Flag
578  Bitfield<2> pf; // Parity Flag
579  Bitfield<0> cf; // Carry Flag
580 EndBitUnion(RFLAGS)
581 
582 BitUnion64(HandyM5Reg)
583  Bitfield<0> mode;
584  Bitfield<3, 1> submode;
585  Bitfield<5, 4> cpl;
586  Bitfield<6> paging;
587  Bitfield<7> prot;
588  Bitfield<9, 8> defOp;
589  Bitfield<11, 10> altOp;
590  Bitfield<13, 12> defAddr;
591  Bitfield<15, 14> altAddr;
592  Bitfield<17, 16> stack;
593 EndBitUnion(HandyM5Reg)
594 
595 
598 BitUnion64(CR0)
599  Bitfield<31> pg; // Paging
600  Bitfield<30> cd; // Cache Disable
601  Bitfield<29> nw; // Not Writethrough
602  Bitfield<18> am; // Alignment Mask
603  Bitfield<16> wp; // Write Protect
604  Bitfield<5> ne; // Numeric Error
605  Bitfield<4> et; // Extension Type
606  Bitfield<3> ts; // Task Switched
607  Bitfield<2> em; // Emulation
608  Bitfield<1> mp; // Monitor Coprocessor
609  Bitfield<0> pe; // Protection Enabled
610 EndBitUnion(CR0)
611 
612 // Page Fault Virtual Address
613 BitUnion64(CR2)
614  Bitfield<31, 0> legacy;
615 EndBitUnion(CR2)
616 
617 BitUnion64(CR3)
618  Bitfield<51, 12> longPdtb; // Long Mode Page-Directory-Table
619  // Base Address
620  Bitfield<31, 12> pdtb; // Non-PAE Addressing Page-Directory-Table
621  // Base Address
622  Bitfield<31, 5> paePdtb; // PAE Addressing Page-Directory-Table
623  // Base Address
624  Bitfield<11, 0> pcid; // Process-Context Identifier
625  Bitfield<4> pcd; // Page-Level Cache Disable
626  Bitfield<3> pwt; // Page-Level Writethrough
627 EndBitUnion(CR3)
628 
629 BitUnion64(CR4)
630  Bitfield<18> osxsave; // Enable XSAVE and Proc Extended States
631  Bitfield<17> pcide; // PCID Enable
632  Bitfield<16> fsgsbase; // Enable RDFSBASE, RDGSBASE, WRFSBASE,
633  // WRGSBASE instructions
634  Bitfield<10> osxmmexcpt; // Operating System Unmasked
635  // Exception Support
636  Bitfield<9> osfxsr; // Operating System FXSave/FSRSTOR Support
637  Bitfield<8> pce; // Performance-Monitoring Counter Enable
638  Bitfield<7> pge; // Page-Global Enable
639  Bitfield<6> mce; // Machine Check Enable
640  Bitfield<5> pae; // Physical-Address Extension
641  Bitfield<4> pse; // Page Size Extensions
642  Bitfield<3> de; // Debugging Extensions
643  Bitfield<2> tsd; // Time Stamp Disable
644  Bitfield<1> pvi; // Protected-Mode Virtual Interrupts
645  Bitfield<0> vme; // Virtual-8086 Mode Extensions
646 EndBitUnion(CR4)
647 
648 BitUnion64(CR8)
649  Bitfield<3, 0> tpr; // Task Priority Register
650 EndBitUnion(CR8)
651 
652 BitUnion64(DR6)
653  Bitfield<0> b0;
654  Bitfield<1> b1;
655  Bitfield<2> b2;
656  Bitfield<3> b3;
657  Bitfield<13> bd;
658  Bitfield<14> bs;
659  Bitfield<15> bt;
660 EndBitUnion(DR6)
661 
662 BitUnion64(DR7)
663  Bitfield<0> l0;
664  Bitfield<1> g0;
665  Bitfield<2> l1;
666  Bitfield<3> g1;
667  Bitfield<4> l2;
668  Bitfield<5> g2;
669  Bitfield<6> l3;
670  Bitfield<7> g3;
671  Bitfield<8> le;
672  Bitfield<9> ge;
673  Bitfield<13> gd;
674  Bitfield<17, 16> rw0;
675  Bitfield<19, 18> len0;
676  Bitfield<21, 20> rw1;
677  Bitfield<23, 22> len1;
678  Bitfield<25, 24> rw2;
679  Bitfield<27, 26> len2;
680  Bitfield<29, 28> rw3;
681  Bitfield<31, 30> len3;
682 EndBitUnion(DR7)
683 
684 // MTRR capabilities
685 BitUnion64(MTRRcap)
686  Bitfield<7, 0> vcnt; // Variable-Range Register Count
687  Bitfield<8> fix; // Fixed-Range Registers
688  Bitfield<10> wc; // Write-Combining
689 EndBitUnion(MTRRcap)
690 
694 BitUnion64(SysenterCS)
695  Bitfield<15, 0> targetCS;
696 EndBitUnion(SysenterCS)
697 
698 BitUnion64(SysenterESP)
699  Bitfield<31, 0> targetESP;
700 EndBitUnion(SysenterESP)
701 
702 BitUnion64(SysenterEIP)
703  Bitfield<31, 0> targetEIP;
704 EndBitUnion(SysenterEIP)
705 
710  Bitfield<7, 0> count; // Number of error reporting register banks
711  Bitfield<8> MCGCP; // MCG_CTL register present.
713 
715  Bitfield<0> ripv; // Restart-IP valid
716  Bitfield<1> eipv; // Error-IP valid
717  Bitfield<2> mcip; // Machine check in-progress
719 
721  Bitfield<0> lbr; // Last-branch record
722  Bitfield<1> btf; // Branch single step
723  Bitfield<2> pb0; // Performance monitoring pin control 0
724  Bitfield<3> pb1; // Performance monitoring pin control 1
725  Bitfield<4> pb2; // Performance monitoring pin control 2
726  Bitfield<5> pb3; // Performance monitoring pin control 3
727  /*uint64_t pb(int index)
728  {
729  return bits(__data, index + 2);
730  }*/
732 
733 BitUnion64(MtrrPhysBase)
734  Bitfield<7, 0> type; // Default memory type
735  Bitfield<51, 12> physbase; // Range physical base address
736 EndBitUnion(MtrrPhysBase)
737 
738 BitUnion64(MtrrPhysMask)
739  Bitfield<11> valid; // MTRR pair enable
740  Bitfield<51, 12> physmask; // Range physical mask
741 EndBitUnion(MtrrPhysMask)
742 
743 BitUnion64(MtrrFixed)
744  /*uint64_t type(int index)
745  {
746  return bits(__data, index * 8 + 7, index * 8);
747  }*/
748 EndBitUnion(MtrrFixed)
749 
751  /*uint64_t pa(int index)
752  {
753  return bits(__data, index * 8 + 2, index * 8);
754  }*/
756 
757 BitUnion64(MtrrDefType)
758  Bitfield<7, 0> type; // Default type
759  Bitfield<10> fe; // Fixed range enable
760  Bitfield<11> e; // MTRR enable
761 EndBitUnion(MtrrDefType)
762 
766 BitUnion64(McStatus)
767  Bitfield<15,0> mcaErrorCode;
768  Bitfield<31,16> modelSpecificCode;
769  Bitfield<56,32> otherInfo;
770  Bitfield<57> pcc; // Processor-context corrupt
771  Bitfield<58> addrv; // Error-address register valid
772  Bitfield<59> miscv; // Miscellaneous-error register valid
773  Bitfield<60> en; // Error condition enabled
774  Bitfield<61> uc; // Uncorrected error
775  Bitfield<62> over; // Status register overflow
776  Bitfield<63> val; // Valid
777 EndBitUnion(McStatus)
778 
779 BitUnion64(McCtl)
780  /*uint64_t en(int index)
781  {
782  return bits(__data, index);
783  }*/
784 EndBitUnion(McCtl)
785 
786 // Extended feature enable register
788  Bitfield<0> sce; // System call extensions
789  Bitfield<8> lme; // Long mode enable
790  Bitfield<10> lma; // Long mode active
791  Bitfield<11> nxe; // No-execute enable
792  Bitfield<12> svme; // Secure virtual machine enable
793  Bitfield<14> ffxsr; // Fast fxsave/fxrstor
795 
797  Bitfield<31,0> targetEip;
798  Bitfield<47,32> syscallCsAndSs;
799  Bitfield<63,48> sysretCsAndSs;
801 
803  Bitfield<31,0> mask;
805 
806 BitUnion64(PerfEvtSel)
807  Bitfield<7,0> eventMask;
808  Bitfield<15,8> unitMask;
809  Bitfield<16> usr; // User mode
810  Bitfield<17> os; // Operating-system mode
811  Bitfield<18> e; // Edge detect
812  Bitfield<19> pc; // Pin control
813  Bitfield<20> intEn; // Interrupt enable
814  Bitfield<22> en; // Counter enable
815  Bitfield<23> inv; // Invert mask
816  Bitfield<31,24> counterMask;
817 EndBitUnion(PerfEvtSel)
818 
820  Bitfield<18> mfde; // MtrrFixDramEn
821  Bitfield<19> mfdm; // MtrrFixDramModEn
822  Bitfield<20> mvdm; // MtrrVarDramEn
823  Bitfield<21> tom2; // MtrrTom2En
825 
826 BitUnion64(IorrBase)
827  Bitfield<3> wr; // WrMem Enable
828  Bitfield<4> rd; // RdMem Enable
829  Bitfield<51,12> physbase; // Range physical base address
830 EndBitUnion(IorrBase)
831 
832 BitUnion64(IorrMask)
833  Bitfield<11> v; // I/O register pair enable (valid)
834  Bitfield<51,12> physmask; // Range physical mask
835 EndBitUnion(IorrMask)
836 
837 BitUnion64(Tom)
838  Bitfield<51,23> physAddr; // Top of memory physical address
839 EndBitUnion(Tom)
840 
841 BitUnion64(VmCrMsr)
842  Bitfield<0> dpd;
843  Bitfield<1> rInit;
844  Bitfield<2> disA20M;
845 EndBitUnion(VmCrMsr)
846 
847 BitUnion64(IgnneMsr)
848  Bitfield<0> ignne;
849 EndBitUnion(IgnneMsr)
850 
851 BitUnion64(SmmCtlMsr)
852  Bitfield<0> dismiss;
853  Bitfield<1> enter;
854  Bitfield<2> smiCycle;
855  Bitfield<3> exit;
856  Bitfield<4> rsmCycle;
857 EndBitUnion(SmmCtlMsr)
858 
862 BitUnion64(SegSelector)
863  // The following bitfield is not defined in the ISA, but it's useful
864  // when checking selectors in larger data types to make sure they
865  // aren't too large.
866  Bitfield<63, 3> esi; // Extended selector
867  Bitfield<15, 3> si; // Selector Index
868  Bitfield<2> ti; // Table Indicator
869  Bitfield<1, 0> rpl; // Requestor Privilege Level
870 EndBitUnion(SegSelector)
871 
876 class SegDescriptorBase
877 {
878  public:
879  uint32_t
880  getter(const uint64_t &storage) const
881  {
882  return (bits(storage, 63, 56) << 24) | bits(storage, 39, 16);
883  }
884 
885  void
886  setter(uint64_t &storage, uint32_t base)
887  {
888  replaceBits(storage, 63, 56, bits(base, 31, 24));
889  replaceBits(storage, 39, 16, bits(base, 23, 0));
890  }
891 };
892 
894 {
895  public:
896  uint32_t
897  getter(const uint64_t &storage) const
898  {
899  uint32_t limit = (bits(storage, 51, 48) << 16) |
900  bits(storage, 15, 0);
901  if (bits(storage, 55))
902  limit = (limit << 12) | mask(12);
903  return limit;
904  }
905 
906  void
907  setter(uint64_t &storage, uint32_t limit)
908  {
909  bool g = (bits(limit, 31, 24) != 0);
910  panic_if(g && bits(limit, 11, 0) != mask(12),
911  "Inlimitid segment limit %#x", limit);
912  if (g)
913  limit = limit >> 12;
914  replaceBits(storage, 51, 48, bits(limit, 23, 16));
915  replaceBits(storage, 15, 0, bits(limit, 15, 0));
916  replaceBits(storage, 55, g ? 1 : 0);
917  }
918 };
919 
920 BitUnion64(SegDescriptor)
921  Bitfield<63, 56> baseHigh;
922  Bitfield<39, 16> baseLow;
923  BitfieldType<SegDescriptorBase> base;
924  Bitfield<55> g; // Granularity
925  Bitfield<54> d; // Default Operand Size
926  Bitfield<54> b; // Default Operand Size
927  Bitfield<53> l; // Long Attribute Bit
928  Bitfield<52> avl; // Available To Software
929  Bitfield<51, 48> limitHigh;
930  Bitfield<15, 0> limitLow;
932  Bitfield<47> p; // Present
933  Bitfield<46, 45> dpl; // Descriptor Privilege-Level
934  Bitfield<44> s; // System
935  SubBitUnion(type, 43, 40)
936  // Specifies whether this descriptor is for code or data.
937  Bitfield<43> codeOrData;
938 
939  // These bit fields are for code segments
940  Bitfield<42> c; // Conforming
941  Bitfield<41> r; // Readable
942 
943  // These bit fields are for data segments
944  Bitfield<42> e; // Expand-Down
945  Bitfield<41> w; // Writable
946 
947  // This is used for both code and data segments.
948  Bitfield<40> a; // Accessed
950 EndBitUnion(SegDescriptor)
951 
956 BitUnion64(TSSlow)
957  Bitfield<63, 56> baseHigh;
958  Bitfield<39, 16> baseLow;
959  BitfieldType<SegDescriptorBase> base;
960  Bitfield<55> g; // Granularity
961  Bitfield<52> avl; // Available To Software
962  Bitfield<51, 48> limitHigh;
963  Bitfield<15, 0> limitLow;
965  Bitfield<47> p; // Present
966  Bitfield<46, 45> dpl; // Descriptor Privilege-Level
967  SubBitUnion(type, 43, 40)
968  // Specifies whether this descriptor is for code or data.
969  Bitfield<43> codeOrData;
970 
971  // These bit fields are for code segments
972  Bitfield<42> c; // Conforming
973  Bitfield<41> r; // Readable
974 
975  // These bit fields are for data segments
976  Bitfield<42> e; // Expand-Down
977  Bitfield<41> w; // Writable
978 
979  // This is used for both code and data segments.
980  Bitfield<40> a; // Accessed
982 EndBitUnion(TSSlow)
983 
988 BitUnion64(TSShigh)
989  Bitfield<31, 0> base;
990 EndBitUnion(TSShigh)
991 
992 BitUnion64(SegAttr)
993  Bitfield<1, 0> dpl;
994  Bitfield<2> unusable;
995  Bitfield<3> defaultSize;
996  Bitfield<4> longMode;
997  Bitfield<5> avl;
998  Bitfield<6> granularity;
999  Bitfield<7> present;
1000  Bitfield<11, 8> type;
1001  Bitfield<12> writable;
1002  Bitfield<13> readable;
1003  Bitfield<14> expandDown;
1004  Bitfield<15> system;
1005 EndBitUnion(SegAttr)
1006 
1007 BitUnion64(GateDescriptor)
1008  Bitfield<63, 48> offsetHigh; // Target Code-Segment Offset
1009  Bitfield<15, 0> offsetLow; // Target Code-Segment Offset
1010  Bitfield<31, 16> selector; // Target Code-Segment Selector
1011  Bitfield<47> p; // Present
1012  Bitfield<46, 45> dpl; // Descriptor Privilege-Level
1013  Bitfield<43, 40> type;
1014  Bitfield<36, 32> count; // Parameter Count
1015 EndBitUnion(GateDescriptor)
1016 
1020 BitUnion64(GateDescriptorLow)
1021  Bitfield<63, 48> offsetHigh; // Target Code-Segment Offset
1022  Bitfield<47> p; // Present
1023  Bitfield<46, 45> dpl; // Descriptor Privilege-Level
1024  Bitfield<43, 40> type;
1025  Bitfield<35, 32> IST; // IST pointer to TSS, new stack for exceptions
1026  Bitfield<31, 16> selector; // Target Code-Segment Selector
1027  Bitfield<15, 0> offsetLow; // Target Code-Segment Offset
1028 EndBitUnion(GateDescriptorLow)
1029 
1030 BitUnion64(GateDescriptorHigh)
1031  Bitfield<31, 0> offset; // Target Code-Segment Offset
1032 EndBitUnion(GateDescriptorHigh)
1033 
1037 BitUnion64(GDTR)
1038 EndBitUnion(GDTR)
1039 
1040 BitUnion64(IDTR)
1041 EndBitUnion(IDTR)
1042 
1043 BitUnion64(LDTR)
1044 EndBitUnion(LDTR)
1045 
1049 BitUnion64(TR)
1050 EndBitUnion(TR)
1051 
1052 
1056 BitUnion64(LocalApicBase)
1057  Bitfield<51, 12> base;
1058  Bitfield<11> enable;
1059  Bitfield<8> bsp;
1060 EndBitUnion(LocalApicBase)
1061 
1062 } // namespace X86ISA
1063 } // namespace gem5
1064 
1065 #endif // __ARCH_X86_INTREGS_HH__
gem5::X86ISA::intf
Bitfield< 9 > intf
Definition: misc.hh:573
gem5::X86ISA::tom2
Bitfield< 21 > tom2
Definition: misc.hh:823
gem5::X86ISA::IST
Bitfield< 35, 32 > IST
Definition: misc.hh:1025
gem5::X86ISA::mask
mask
Definition: misc.hh:803
gem5::X86ISA::misc_reg::Mc3Misc
@ Mc3Misc
Definition: misc.hh:248
gem5::X86ISA::iopl
Bitfield< 13, 12 > iopl
Definition: misc.hh:570
gem5::X86ISA::misc_reg::MtrrPhysBase3
@ MtrrPhysBase3
Definition: misc.hh:177
gem5::X86ISA::misc_reg::mcStatus
static RegIndex mcStatus(int index)
Definition: misc.hh:456
gem5::X86ISA::pc
Bitfield< 19 > pc
Definition: misc.hh:812
gem5::X86ISA::DFBit
@ DFBit
Definition: misc.hh:68
gem5::X86ISA::misc_reg::MtrrFix4kF8000
@ MtrrFix4kF8000
Definition: misc.hh:205
gem5::X86ISA::targetEIP
targetEIP
Definition: misc.hh:703
gem5::X86ISA::misc_reg::MtrrPhysMask0
@ MtrrPhysMask0
Definition: misc.hh:185
gem5::X86ISA::misc_reg::DsAttr
@ DsAttr
Definition: misc.hh:376
gem5::X86ISA::misc_reg::Mc5Misc
@ Mc5Misc
Definition: misc.hh:250
gem5::X86ISA::fe
Bitfield< 10 > fe
Definition: misc.hh:759
x86_traits.hh
gem5::X86ISA::SFBit
@ SFBit
Definition: misc.hh:67
gem5::X86ISA::longMode
Bitfield< 4 > longMode
Definition: misc.hh:996
gem5::X86ISA::bt
Bitfield< 15 > bt
Definition: misc.hh:659
gem5::X86ISA::misc_reg::SmmCtl
@ SmmCtl
Definition: misc.hh:299
gem5::X86ISA::misc_reg::Cr10
@ Cr10
Definition: misc.hh:126
gem5::X86ISA::misc_reg::Es
@ Es
Definition: misc.hh:307
gem5::X86ISA::misc_reg::Mc6Status
@ Mc6Status
Definition: misc.hh:229
gem5::X86ISA::pcc
Bitfield< 57 > pcc
Definition: misc.hh:770
gem5::X86ISA::misc_reg::Dr0
@ Dr0
Definition: misc.hh:135
gem5::X86ISA::misc_reg::EsLimit
@ EsLimit
Definition: misc.hh:357
gem5::X86ISA::misc_reg::IdtrEffBase
@ IdtrEffBase
Definition: misc.hh:353
gem5::X86ISA::misc_reg::Ignne
@ Ignne
Definition: misc.hh:298
gem5::X86ISA::misc_reg::MtrrFix4kC0000
@ MtrrFix4kC0000
Definition: misc.hh:198
gem5::X86ISA::CcFlagMask
constexpr uint32_t CcFlagMask
Definition: misc.hh:73
gem5::X86ISA::misc_reg::Fsw
@ Fsw
Definition: misc.hh:392
gem5::X86ISA::misc_reg::SfMask
@ SfMask
Definition: misc.hh:262
gem5::X86ISA::pvi
Bitfield< 1 > pvi
Definition: misc.hh:644
gem5::X86ISA::misc_reg::TrLimit
@ TrLimit
Definition: misc.hh:368
gem5::X86ISA::cpl
Bitfield< 5, 4 > cpl
Definition: misc.hh:585
gem5::X86ISA::misc_reg::Cstar
@ Cstar
Definition: misc.hh:260
gem5::X86ISA::IDBit
@ IDBit
Definition: misc.hh:85
gem5::X86ISA::misc_reg::Mc1Status
@ Mc1Status
Definition: misc.hh:224
gem5::X86ISA::paging
Bitfield< 6 > paging
Definition: misc.hh:586
gem5::X86ISA::misc_reg::GsBase
@ GsBase
Definition: misc.hh:328
gem5::X86ISA::l3
Bitfield< 6 > l3
Definition: misc.hh:669
gem5::X86ISA::mode
Bitfield< 3 > mode
Definition: types.hh:192
gem5::X86ISA::ZEBit
@ ZEBit
Definition: misc.hh:93
gem5::X86ISA::misc_reg::PerfEvtSelBase
@ PerfEvtSelBase
Definition: misc.hh:268
gem5::X86ISA::e
Bitfield< 11 > e
Definition: misc.hh:760
gem5::X86ISA::zf
Bitfield< 6 > zf
Definition: misc.hh:551
gem5::X86ISA::rw3
Bitfield< 29, 28 > rw3
Definition: misc.hh:680
gem5::X86ISA::mvdm
Bitfield< 20 > mvdm
Definition: misc.hh:822
gem5::X86ISA::misc_reg::FsAttr
@ FsAttr
Definition: misc.hh:377
gem5::X86ISA::misc_reg::HsAttr
@ HsAttr
Definition: misc.hh:379
gem5::X86ISA::IEBit
@ IEBit
Definition: misc.hh:91
gem5::X86ISA::misc_reg::SsBase
@ SsBase
Definition: misc.hh:325
gem5::X86ISA::misc_reg::TslEffBase
@ TslEffBase
Definition: misc.hh:348
gem5::X86ISA::misc_reg::IorrMaskEnd
@ IorrMaskEnd
Definition: misc.hh:292
gem5::X86ISA::mce
Bitfield< 6 > mce
Definition: misc.hh:639
gem5::X86ISA::misc_reg::Mc2Ctl
@ Mc2Ctl
Definition: misc.hh:214
gem5::X86ISA::defOp
Bitfield< 9, 8 > defOp
Definition: misc.hh:588
gem5::X86ISA::misc_reg::Ms
@ Ms
Definition: misc.hh:317
gem5::X86ISA::misc_reg::McgCtl
@ McgCtl
Definition: misc.hh:164
gem5::X86ISA::CC2Bit
@ CC2Bit
Definition: misc.hh:103
gem5::X86ISA::df
Bitfield< 10 > df
Definition: misc.hh:572
gem5::X86ISA::MCGCP
Bitfield< 8 > MCGCP
Definition: misc.hh:711
gem5::X86ISA::ErrSummaryBit
@ ErrSummaryBit
Definition: misc.hh:100
gem5::X86ISA::misc_reg::dr
static RegIndex dr(int index)
Definition: misc.hh:428
gem5::X86ISA::len3
Bitfield< 31, 30 > len3
Definition: misc.hh:681
gem5::X86ISA::misc_reg::Cr11
@ Cr11
Definition: misc.hh:127
gem5::X86ISA::misc_reg::Mc4Status
@ Mc4Status
Definition: misc.hh:227
gem5::X86ISA::misc_reg::Mc5Status
@ Mc5Status
Definition: misc.hh:228
gem5::X86ISA::wc
Bitfield< 10 > wc
Definition: misc.hh:688
gem5::X86ISA::misc_reg::Cr13
@ Cr13
Definition: misc.hh:129
gem5::X86ISA::len1
Bitfield< 23, 22 > len1
Definition: misc.hh:677
gem5::X86ISA::ZFBit
@ ZFBit
Definition: misc.hh:66
gem5::X86ISA::pb3
Bitfield< 5 > pb3
Definition: misc.hh:726
gem5::X86ISA::CC0Bit
@ CC0Bit
Definition: misc.hh:101
gem5::X86ISA::misc_reg::McMiscBase
@ McMiscBase
Definition: misc.hh:244
gem5::X86ISA::misc_reg::Star
@ Star
Definition: misc.hh:258
gem5::X86ISA::g2
Bitfield< 5 > g2
Definition: misc.hh:668
gem5::replaceBits
constexpr void replaceBits(T &val, unsigned first, unsigned last, B bit_val)
A convenience function to replace bits first to last of val with bit_val in place.
Definition: bitfield.hh:213
gem5::X86ISA::misc_reg::DsLimit
@ DsLimit
Definition: misc.hh:360
gem5::X86ISA::v
Bitfield< 6, 3 > v
Definition: types.hh:125
gem5::SparcISA::id
Bitfield< 11 > id
Definition: misc.hh:126
gem5::X86ISA::b
Bitfield< 54 > b
Definition: misc.hh:926
gem5::X86ISA::mcip
Bitfield< 2 > mcip
Definition: misc.hh:717
gem5::X86ISA::misc_reg::Mc4Ctl
@ Mc4Ctl
Definition: misc.hh:216
gem5::X86ISA::misc_reg::Mc6Addr
@ Mc6Addr
Definition: misc.hh:240
gem5::X86ISA::NumDRegs
const int NumDRegs
Definition: x86_traits.hh:57
gem5::X86ISA::offset
offset
Definition: misc.hh:1031
gem5::X86ISA::pge
Bitfield< 7 > pge
Definition: misc.hh:638
gem5::X86ISA::misc_reg::LsAttr
@ LsAttr
Definition: misc.hh:382
gem5::X86ISA::baseHigh
baseHigh
Definition: misc.hh:921
gem5::X86ISA::misc_reg::MsBase
@ MsBase
Definition: misc.hh:333
gem5::X86ISA::misc_reg::CsBase
@ CsBase
Definition: misc.hh:324
gem5::X86ISA::val
Bitfield< 63 > val
Definition: misc.hh:776
gem5::X86ISA::misc_reg::PciConfigAddress
@ PciConfigAddress
Definition: misc.hh:406
gem5::X86ISA::misc_reg::FsLimit
@ FsLimit
Definition: misc.hh:361
gem5::X86ISA::misc_reg::mcMisc
static RegIndex mcMisc(int index)
Definition: misc.hh:470
gem5::X86ISA::misc_reg::DefType
@ DefType
Definition: misc.hh:209
gem5::X86ISA::misc_reg::CsEffBase
@ CsEffBase
Definition: misc.hh:342
gem5::X86ISA::misc_reg::segEffBase
static RegIndex segEffBase(int index)
Definition: misc.hh:519
gem5::X86ISA::misc_reg::SsEffBase
@ SsEffBase
Definition: misc.hh:343
gem5::X86ISA::g3
Bitfield< 7 > g3
Definition: misc.hh:670
gem5::X86ISA::misc_reg::DsBase
@ DsBase
Definition: misc.hh:326
gem5::X86ISA::misc_reg::Mc3Ctl
@ Mc3Ctl
Definition: misc.hh:215
gem5::X86ISA::misc_reg::Fiseg
@ Fiseg
Definition: misc.hh:395
gem5::X86ISA::osxmmexcpt
Bitfield< 10 > osxmmexcpt
Definition: misc.hh:634
gem5::X86ISA::SegDescriptorLimit
Definition: misc.hh:893
gem5::X86ISA::ACBit
@ ACBit
Definition: misc.hh:82
gem5::X86ISA::misc_reg::McCtlBase
@ McCtlBase
Definition: misc.hh:211
gem5::X86ISA::misc_reg::Foseg
@ Foseg
Definition: misc.hh:397
gem5::X86ISA::le
Bitfield< 8 > le
Definition: misc.hh:671
gem5::X86ISA::smiCycle
Bitfield< 2 > smiCycle
Definition: misc.hh:854
gem5::X86ISA::defaultSize
Bitfield< 3 > defaultSize
Definition: misc.hh:995
gem5::X86ISA::of
Bitfield< 11 > of
Definition: misc.hh:571
gem5::X86ISA::pb1
Bitfield< 3 > pb1
Definition: misc.hh:724
gem5::X86ISA::b2
Bitfield< 2 > b2
Definition: misc.hh:655
gem5::X86ISA::misc_reg::segAttr
static RegIndex segAttr(int index)
Definition: misc.hh:533
gem5::X86ISA::system
Bitfield< 15 > system
Definition: misc.hh:1004
gem5::X86ISA::l
Bitfield< 53 > l
Definition: misc.hh:927
gem5::X86ISA::misc_reg::TsgEffBase
@ TsgEffBase
Definition: misc.hh:349
gem5::X86ISA::misc_reg::Tsg
@ Tsg
Definition: misc.hh:315
gem5::X86ISA::rw0
Bitfield< 17, 16 > rw0
Definition: misc.hh:674
gem5::X86ISA::vcnt
vcnt
Definition: misc.hh:686
gem5::X86ISA::pb2
Bitfield< 4 > pb2
Definition: misc.hh:725
gem5::X86ISA::misc_reg::MtrrPhysMask3
@ MtrrPhysMask3
Definition: misc.hh:188
gem5::X86ISA::tpr
tpr
Definition: misc.hh:649
gem5::X86ISA::misc_reg::Mc6Misc
@ Mc6Misc
Definition: misc.hh:251
gem5::X86ISA::limit
BitfieldType< SegDescriptorLimit > limit
Definition: misc.hh:931
gem5::X86ISA::misc_reg::PerfEvtSelEnd
@ PerfEvtSelEnd
Definition: misc.hh:273
gem5::X86ISA::UEBit
@ UEBit
Definition: misc.hh:95
gem5::X86ISA::misc_reg::IorrMaskBase
@ IorrMaskBase
Definition: misc.hh:289
gem5::X86ISA::len0
Bitfield< 19, 18 > len0
Definition: misc.hh:675
gem5::X86ISA::rInit
Bitfield< 1 > rInit
Definition: misc.hh:843
gem5::X86ISA::misc_reg::MtrrPhysMask4
@ MtrrPhysMask4
Definition: misc.hh:189
gem5::X86ISA::rf
Bitfield< 16 > rf
Definition: misc.hh:568
gem5::X86ISA::misc_reg::Dr1
@ Dr1
Definition: misc.hh:136
gem5::X86ISA::misc_reg::Cr3
@ Cr3
Definition: misc.hh:119
gem5::X86ISA::misc_reg::MsEffBase
@ MsEffBase
Definition: misc.hh:351
gem5::X86ISA::base
Bitfield< 51, 12 > base
Definition: pagetable.hh:141
gem5::X86ISA::misc_reg::EsBase
@ EsBase
Definition: misc.hh:323
gem5::X86ISA::misc_reg::Mc2Misc
@ Mc2Misc
Definition: misc.hh:247
gem5::X86ISA::misc_reg::TsgAttr
@ TsgAttr
Definition: misc.hh:381
gem5::X86ISA::misc_reg::Dr4
@ Dr4
Definition: misc.hh:139
gem5::X86ISA::SegDescriptorLimit::setter
void setter(uint64_t &storage, uint32_t limit)
Definition: misc.hh:907
gem5::X86ISA::misc_reg::Dr2
@ Dr2
Definition: misc.hh:137
gem5::X86ISA::ne
Bitfield< 5 > ne
Definition: misc.hh:604
gem5::X86ISA::defAddr
Bitfield< 13, 12 > defAddr
Definition: misc.hh:590
gem5::X86ISA::VIPBit
@ VIPBit
Definition: misc.hh:84
gem5::X86ISA::bs
Bitfield< 14 > bs
Definition: misc.hh:658
gem5::X86ISA::miscRegClass
constexpr RegClass miscRegClass(MiscRegClass, MiscRegClassName, misc_reg::NumRegs, debug::MiscRegs)
gem5::X86ISA::ts
Bitfield< 3 > ts
Definition: misc.hh:606
gem5::X86ISA::misc_reg::Cr14
@ Cr14
Definition: misc.hh:130
gem5::X86ISA::altAddr
Bitfield< 15, 14 > altAddr
Definition: misc.hh:591
gem5::X86ISA::lma
Bitfield< 10 > lma
Definition: misc.hh:790
gem5::X86ISA::wp
Bitfield< 16 > wp
Definition: misc.hh:603
gem5::X86ISA::writable
Bitfield< 12 > writable
Definition: misc.hh:1001
gem5::X86ISA::misc_reg::MtrrPhysBase6
@ MtrrPhysBase6
Definition: misc.hh:180
gem5::X86ISA::misc_reg::McAddrBase
@ McAddrBase
Definition: misc.hh:233
gem5::X86ISA::BusyBit
@ BusyBit
Definition: misc.hh:105
gem5::X86ISA::misc_reg::TsgBase
@ TsgBase
Definition: misc.hh:331
gem5::X86ISA::tsd
Bitfield< 2 > tsd
Definition: misc.hh:643
gem5::X86ISA::fsgsbase
Bitfield< 16 > fsgsbase
Definition: misc.hh:632
gem5::X86ISA::VIFBit
@ VIFBit
Definition: misc.hh:83
gem5::X86ISA::b3
Bitfield< 3 > b3
Definition: misc.hh:656
gem5::X86ISA::uc
Bitfield< 61 > uc
Definition: misc.hh:774
gem5::X86ISA::misc_reg::Dr5
@ Dr5
Definition: misc.hh:140
gem5::X86ISA::CondFlagBit
CondFlagBit
Definition: misc.hh:59
gem5::X86ISA::en
Bitfield< 60 > en
Definition: misc.hh:773
gem5::X86ISA::DEBit
@ DEBit
Definition: misc.hh:92
gem5::X86ISA::misc_reg::CsLimit
@ CsLimit
Definition: misc.hh:358
gem5::X86ISA::OEBit
@ OEBit
Definition: misc.hh:94
gem5::X86ISA::misc_reg::McStatusEnd
@ McStatusEnd
Definition: misc.hh:231
gem5::X86ISA::misc_reg::McMiscEnd
@ McMiscEnd
Definition: misc.hh:253
gem5::X86ISA::readable
Bitfield< 13 > readable
Definition: misc.hh:1002
gem5::X86ISA::misc_reg::MtrrFix4kE0000
@ MtrrFix4kE0000
Definition: misc.hh:202
gem5::X86ISA::misc_reg::VmHsavePa
@ VmHsavePa
Definition: misc.hh:300
gem5::X86ISA::misc_reg::segSel
static RegIndex segSel(int index)
Definition: misc.hh:505
gem5::X86ISA::misc_reg::Cr0
@ Cr0
Definition: misc.hh:116
gem5::X86ISA::ge
Bitfield< 9 > ge
Definition: misc.hh:672
gem5::X86ISA::misc_reg::isValid
static bool isValid(int index)
Definition: misc.hh:412
gem5::X86ISA::nxe
Bitfield< 11 > nxe
Definition: misc.hh:791
gem5::X86ISA::misc_reg::MtrrPhysMask2
@ MtrrPhysMask2
Definition: misc.hh:187
gem5::X86ISA::misc_reg::TsgLimit
@ TsgLimit
Definition: misc.hh:365
gem5::X86ISA::RFBit
@ RFBit
Definition: misc.hh:80
gem5::X86ISA::altOp
Bitfield< 11, 10 > altOp
Definition: misc.hh:589
gem5::X86ISA::misc_reg::Efer
@ Efer
Definition: misc.hh:256
gem5::X86ISA::misc_reg::segBase
static RegIndex segBase(int index)
Definition: misc.hh:512
gem5::X86ISA::misc_reg::Rflags
@ Rflags
Definition: misc.hh:145
gem5::X86ISA::de
Bitfield< 3 > de
Definition: misc.hh:642
gem5::X86ISA::misc_reg::DsEffBase
@ DsEffBase
Definition: misc.hh:344
gem5::X86ISA::misc_reg::mtrrPhysBase
static RegIndex mtrrPhysBase(int index)
Definition: misc.hh:435
gem5::X86ISA::CC3Bit
@ CC3Bit
Definition: misc.hh:104
gem5::X86ISA::misc_reg::Mc5Ctl
@ Mc5Ctl
Definition: misc.hh:217
gem5::X86ISA::em
Bitfield< 2 > em
Definition: misc.hh:607
gem5::X86ISA::present
Bitfield< 7 > present
Definition: misc.hh:999
gem5::X86ISA::misc_reg::MtrrFix4kD0000
@ MtrrFix4kD0000
Definition: misc.hh:200
gem5::X86ISA::misc_reg::SegBaseBase
@ SegBaseBase
Definition: misc.hh:322
gem5::X86ISA::pcd
Bitfield< 4 > pcd
Definition: pagetable.hh:147
gem5::X86ISA::targetESP
targetESP
Definition: misc.hh:699
gem5::X86ISA::r
Bitfield< 41 > r
Definition: misc.hh:941
gem5::X86ISA::misc_reg::Mc0Ctl
@ Mc0Ctl
Definition: misc.hh:212
gem5::X86ISA::c
Bitfield< 42 > c
Definition: misc.hh:940
gem5::X86ISA::rw1
Bitfield< 21, 20 > rw1
Definition: misc.hh:676
gem5::X86ISA::CFBit
@ CFBit
Definition: misc.hh:61
gem5::X86ISA::misc_reg::perfEvtCtr
static RegIndex perfEvtCtr(int index)
Definition: misc.hh:484
gem5::X86ISA::misc_reg::MtrrFix4kD8000
@ MtrrFix4kD8000
Definition: misc.hh:201
gem5::X86ISA::misc_reg::MtrrFix16k80000
@ MtrrFix16k80000
Definition: misc.hh:196
gem5::X86ISA::offsetHigh
offsetHigh
Definition: misc.hh:1008
gem5::X86ISA::misc_reg::SegAttrBase
@ SegAttrBase
Definition: misc.hh:372
gem5::X86ISA::len2
Bitfield< 27, 26 > len2
Definition: misc.hh:679
gem5::X86ISA::pae
Bitfield< 5 > pae
Definition: misc.hh:640
gem5::X86ISA::misc_reg::Mc7Addr
@ Mc7Addr
Definition: misc.hh:241
gem5::X86ISA::pb0
Bitfield< 2 > pb0
Definition: misc.hh:723
gem5::X86ISA::otherInfo
Bitfield< 56, 32 > otherInfo
Definition: misc.hh:769
gem5::X86ISA::misc_reg::MtrrFix4kC8000
@ MtrrFix4kC8000
Definition: misc.hh:199
gem5::X86ISA::stack
Bitfield< 17, 16 > stack
Definition: misc.hh:592
gem5::X86ISA::btf
Bitfield< 1 > btf
Definition: misc.hh:722
gem5::X86ISA::NumCRegs
const int NumCRegs
Definition: x86_traits.hh:56
gem5::X86ISA::misc_reg::MtrrPhysBaseBase
@ MtrrPhysBaseBase
Definition: misc.hh:173
gem5::X86ISA::misc_reg::Mc3Status
@ Mc3Status
Definition: misc.hh:226
gem5::X86ISA::enable
Bitfield< 11 > enable
Definition: misc.hh:1058
gem5::X86ISA::misc_reg::Cr12
@ Cr12
Definition: misc.hh:128
gem5::X86ISA::misc_reg::MtrrPhysMask1
@ MtrrPhysMask1
Definition: misc.hh:186
gem5::X86ISA::misc_reg::Cr2
@ Cr2
Definition: misc.hh:118
gem5::X86ISA::misc_reg::MtrrPhysBase1
@ MtrrPhysBase1
Definition: misc.hh:175
gem5::X86ISA::g
Bitfield< 8 > g
Definition: pagetable.hh:143
gem5::X86ISA::misc_reg::TslAttr
@ TslAttr
Definition: misc.hh:380
gem5::X86ISA::misc_reg::TrEffBase
@ TrEffBase
Definition: misc.hh:352
gem5::X86ISA::count
count
Definition: misc.hh:710
gem5::X86ISA::EZFBit
@ EZFBit
Definition: misc.hh:65
gem5::X86ISA::TFBit
@ TFBit
Definition: misc.hh:77
gem5::X86ISA::misc_reg::Syscfg
@ Syscfg
Definition: misc.hh:282
gem5::X86ISA::misc_reg::cr
static RegIndex cr(int index)
Definition: misc.hh:421
gem5::X86ISA::misc_reg::PerfEvtCtrEnd
@ PerfEvtCtrEnd
Definition: misc.hh:280
gem5::X86ISA::misc_reg::Cr9
@ Cr9
Definition: misc.hh:125
gem5::X86ISA::misc_reg::SegSelBase
@ SegSelBase
Definition: misc.hh:306
gem5::X86ISA::misc_reg::mcAddr
static RegIndex mcAddr(int index)
Definition: misc.hh:463
gem5::X86ISA::VMBit
@ VMBit
Definition: misc.hh:81
gem5::X86ISA::misc_reg::Mc0Addr
@ Mc0Addr
Definition: misc.hh:234
gem5::X86ISA::misc_reg::TslLimit
@ TslLimit
Definition: misc.hh:364
gem5::X86ISA::rsmCycle
Bitfield< 4 > rsmCycle
Definition: misc.hh:856
gem5::BitfieldType
Definition: bitunion.hh:117
segment.hh
gem5::X86ISA::mp
Bitfield< 1 > mp
Definition: misc.hh:608
gem5::X86ISA::misc_reg::SysenterEip
@ SysenterEip
Definition: misc.hh:160
gem5::X86ISA::disA20M
Bitfield< 2 > disA20M
Definition: misc.hh:844
bitunion.hh
gem5::X86ISA::type
type
Definition: misc.hh:734
gem5::X86ISA::misc_reg::DebugCtlMsr
@ DebugCtlMsr
Definition: misc.hh:166
gem5::X86ISA::StackFaultBit
@ StackFaultBit
Definition: misc.hh:99
gem5::X86ISA::vme
Bitfield< 0 > vme
Definition: misc.hh:645
gem5::X86ISA::misc_reg::Mc1Misc
@ Mc1Misc
Definition: misc.hh:246
gem5::X86ISA::misc_reg::Hs
@ Hs
Definition: misc.hh:313
gem5::X86ISA::submode
Bitfield< 3, 1 > submode
Definition: misc.hh:584
gem5::X86ISA::nt
Bitfield< 14 > nt
Definition: misc.hh:569
gem5::X86ISA::SegDescriptorLimit::getter
uint32_t getter(const uint64_t &storage) const
Definition: misc.hh:897
gem5::X86ISA::physAddr
physAddr
Definition: misc.hh:838
gem5::X86ISA::misc_reg::IdtrLimit
@ IdtrLimit
Definition: misc.hh:369
gem5::X86ISA::osfxsr
Bitfield< 9 > osfxsr
Definition: misc.hh:636
gem5::X86ISA::misc_reg::Mc1Ctl
@ Mc1Ctl
Definition: misc.hh:213
gem5::X86ISA::misc_reg::Cr7
@ Cr7
Definition: misc.hh:123
gem5::X86ISA::misc_reg::TrBase
@ TrBase
Definition: misc.hh:334
gem5::X86ISA::misc_reg::SsLimit
@ SsLimit
Definition: misc.hh:359
gem5::X86ISA::misc_reg::Mc4Addr
@ Mc4Addr
Definition: misc.hh:238
gem5::X86ISA::misc_reg::LastExceptionFromIp
@ LastExceptionFromIp
Definition: misc.hh:170
gem5::X86ISA::mcaErrorCode
mcaErrorCode
Definition: misc.hh:767
gem5::X86ISA::BitUnion64
BitUnion64(VAddr) Bitfield< 20
gem5::X86ISA::misc_reg::Fop
@ Fop
Definition: misc.hh:399
gem5::X86ISA::misc_reg::Fioff
@ Fioff
Definition: misc.hh:396
gem5::X86ISA::addrv
Bitfield< 58 > addrv
Definition: misc.hh:771
gem5::X86ISA::misc_reg::HsLimit
@ HsLimit
Definition: misc.hh:363
gem5::X86ISA::misc_reg::LsLimit
@ LsLimit
Definition: misc.hh:366
gem5::X86ISA::misc_reg::Cr15
@ Cr15
Definition: misc.hh:131
gem5::X86ISA::misc_reg::MtrrPhysBase4
@ MtrrPhysBase4
Definition: misc.hh:178
gem5::X86ISA::misc_reg::MsLimit
@ MsLimit
Definition: misc.hh:367
gem5::X86ISA::bd
Bitfield< 13 > bd
Definition: misc.hh:657
gem5::X86ISA::misc_reg::iorrMask
static RegIndex iorrMask(int index)
Definition: misc.hh:498
gem5::MipsISA::wr
Bitfield< 3 > wr
Definition: pra_constants.hh:244
gem5::X86ISA::SubBitUnion
SubBitUnion(type, 43, 40) Bitfield< 43 > codeOrData
gem5::X86ISA::misc_reg::Mc2Status
@ Mc2Status
Definition: misc.hh:225
gem5::X86ISA::miscv
Bitfield< 59 > miscv
Definition: misc.hh:772
gem5::X86ISA::misc_reg::PerfEvtCtr0
@ PerfEvtCtr0
Definition: misc.hh:276
gem5::X86ISA::misc_reg::MtrrPhysMask5
@ MtrrPhysMask5
Definition: misc.hh:190
gem5::X86ISA::ECFBit
@ ECFBit
Definition: misc.hh:63
gem5::X86ISA::misc_reg::Mtrrcap
@ Mtrrcap
Definition: misc.hh:156
gem5::X86ISA::misc_reg::Mc3Addr
@ Mc3Addr
Definition: misc.hh:237
gem5::bits
constexpr T bits(T val, unsigned first, unsigned last)
Extract the bitfield from position 'first' to 'last' (inclusive) from 'val' and right justify it.
Definition: bitfield.hh:76
gem5::X86ISA::misc_reg::DrBase
@ DrBase
Definition: misc.hh:134
gem5::X86ISA::misc_reg::LastBranchFromIp
@ LastBranchFromIp
Definition: misc.hh:168
gem5::X86ISA::EndBitUnion
EndBitUnion(TriggerIntMessage) namespace delivery_mode
Definition: intmessage.hh:53
gem5::X86ISA::misc_reg::Mc7Misc
@ Mc7Misc
Definition: misc.hh:252
gem5::X86ISA::misc_reg::Mc5Addr
@ Mc5Addr
Definition: misc.hh:239
gem5::X86ISA::pcid
Bitfield< 11, 0 > pcid
Definition: misc.hh:624
gem5::X86ISA::misc_reg::ApicBase
@ ApicBase
Definition: misc.hh:403
gem5::X86ISA::misc_reg::McgStatus
@ McgStatus
Definition: misc.hh:163
gem5::X86ISA::gd
Bitfield< 13 > gd
Definition: misc.hh:673
gem5::X86ISA::ti
Bitfield< 2 > ti
Definition: misc.hh:868
gem5::X86ISA::misc_reg::Mc4Misc
@ Mc4Misc
Definition: misc.hh:249
gem5::X86ISA::misc_reg::Ss
@ Ss
Definition: misc.hh:309
gem5::X86ISA::pf
Bitfield< 2 > pf
Definition: misc.hh:555
gem5::X86ISA::misc_reg::Mc6Ctl
@ Mc6Ctl
Definition: misc.hh:218
gem5::X86ISA::b1
Bitfield< 1 > b1
Definition: misc.hh:654
gem5::X86ISA::misc_reg::McCtlEnd
@ McCtlEnd
Definition: misc.hh:220
gem5::X86ISA::misc_reg::X87Top
@ X87Top
Definition: misc.hh:388
gem5::X86ISA::misc_reg::MtrrFix4kF0000
@ MtrrFix4kF0000
Definition: misc.hh:204
gem5::X86ISA::ffxsr
Bitfield< 14 > ffxsr
Definition: misc.hh:793
gem5::X86ISA::bsp
Bitfield< 8 > bsp
Definition: misc.hh:1059
gem5::X86ISA::paePdtb
Bitfield< 31, 5 > paePdtb
Definition: misc.hh:622
gem5::X86ISA::misc_reg::Mc0Status
@ Mc0Status
Definition: misc.hh:223
gem5::X86ISA::misc_reg::Lstar
@ Lstar
Definition: misc.hh:259
gem5::X86ISA::misc_reg::PerfEvtCtr2
@ PerfEvtCtr2
Definition: misc.hh:278
gem5::X86ISA::usr
Bitfield< 16 > usr
Definition: misc.hh:809
gem5::X86ISA::misc_reg::MtrrPhysBase7
@ MtrrPhysBase7
Definition: misc.hh:181
gem5::X86ISA::misc_reg::IorrMask0
@ IorrMask0
Definition: misc.hh:290
gem5::X86ISA::esi
esi
Definition: misc.hh:866
gem5::X86ISA::rw2
Bitfield< 25, 24 > rw2
Definition: misc.hh:678
gem5::X86ISA::af
Bitfield< 4 > af
Definition: misc.hh:553
gem5::X86ISA::misc_reg::TopMem2
@ TopMem2
Definition: misc.hh:295
gem5::X86ISA::dpl
Bitfield< 46, 45 > dpl
Definition: misc.hh:933
gem5::X86ISA::misc_reg::Mxcsr
@ Mxcsr
Definition: misc.hh:390
gem5::X86ISA::w
Bitfield< 1 > w
Definition: pagetable.hh:150
gem5::RegClass
Definition: reg_class.hh:184
gem5::X86ISA::si
Bitfield< 15, 3 > si
Definition: misc.hh:867
gem5::X86ISA::misc_reg::IdtrBase
@ IdtrBase
Definition: misc.hh:335
gem5::X86ISA::ac
Bitfield< 18 > ac
Definition: misc.hh:566
gem5::X86ISA::misc_reg::GsLimit
@ GsLimit
Definition: misc.hh:362
gem5::X86ISA::misc_reg::PerfEvtCtrBase
@ PerfEvtCtrBase
Definition: misc.hh:275
gem5::X86ISA::OFBit
@ OFBit
Definition: misc.hh:69
gem5::X86ISA::longPdtb
longPdtb
Definition: misc.hh:618
gem5::X86ISA::baseLow
Bitfield< 39, 16 > baseLow
Definition: misc.hh:922
gem5::X86ISA::misc_reg::HsBase
@ HsBase
Definition: misc.hh:329
gem5::X86ISA::expandDown
Bitfield< 14 > expandDown
Definition: misc.hh:1003
gem5::X86ISA::exit
Bitfield< 3 > exit
Definition: misc.hh:855
gem5::X86ISA::RFLAGBit
RFLAGBit
Definition: misc.hh:75
gem5::X86ISA::misc_reg::IorrBase1
@ IorrBase1
Definition: misc.hh:286
gem5::X86ISA::NTBit
@ NTBit
Definition: misc.hh:79
gem5::X86ISA::enter
Bitfield< 1 > enter
Definition: misc.hh:853
gem5::X86ISA::intEn
Bitfield< 20 > intEn
Definition: misc.hh:813
gem5::X86ISA::misc_reg::Cr4
@ Cr4
Definition: misc.hh:120
gem5::X86ISA::misc_reg::MtrrPhysMask7
@ MtrrPhysMask7
Definition: misc.hh:192
gem5::X86ISA::segment_idx::NumIdxs
@ NumIdxs
Definition: segment.hh:67
gem5::X86ISA::physbase
Bitfield< 51, 12 > physbase
Definition: misc.hh:735
gem5::X86ISA::vif
Bitfield< 19 > vif
Definition: misc.hh:565
gem5::X86ISA::BitUnion32
BitUnion32(TriggerIntMessage) Bitfield< 7
gem5::X86ISA::misc_reg::PerfEvtSel1
@ PerfEvtSel1
Definition: misc.hh:270
gem5::X86ISA::misc_reg::SysenterCs
@ SysenterCs
Definition: misc.hh:158
gem5::X86ISA::legacy
legacy
Definition: misc.hh:614
gem5::X86ISA::misc_reg::FsBase
@ FsBase
Definition: misc.hh:327
gem5::X86ISA::misc_reg::MtrrFix64k00000
@ MtrrFix64k00000
Definition: misc.hh:195
gem5::X86ISA::misc_reg::FsEffBase
@ FsEffBase
Definition: misc.hh:345
gem5::MiscRegClassName
constexpr char MiscRegClassName[]
Definition: reg_class.hh:81
gem5::X86ISA::misc_reg::McgCap
@ McgCap
Definition: misc.hh:162
gem5::X86ISA::lme
Bitfield< 8 > lme
Definition: misc.hh:789
gem5::X86ISA::eventMask
eventMask
Definition: misc.hh:807
gem5::X86ISA::tf
Bitfield< 8 > tf
Definition: misc.hh:574
gem5::X86ISA::misc_reg::Dr3
@ Dr3
Definition: misc.hh:138
gem5::X86ISA::misc_reg::LastBranchToIp
@ LastBranchToIp
Definition: misc.hh:169
gem5::QARMA::b0
Bitfield< 3, 0 > b0
Definition: qarma.hh:66
gem5::X86ISA::misc_reg::Mc1Addr
@ Mc1Addr
Definition: misc.hh:235
panic_if
#define panic_if(cond,...)
Conditional panic macro that checks the supplied condition and only panics if the condition is true a...
Definition: logging.hh:214
gem5::X86ISA::misc_reg::SsAttr
@ SsAttr
Definition: misc.hh:375
gem5::X86ISA::sysretCsAndSs
Bitfield< 63, 48 > sysretCsAndSs
Definition: misc.hh:799
gem5::X86ISA::misc_reg::McAddrEnd
@ McAddrEnd
Definition: misc.hh:242
gem5::X86ISA::misc_reg::IorrBaseEnd
@ IorrBaseEnd
Definition: misc.hh:287
gem5::X86ISA::misc_reg::Mc0Misc
@ Mc0Misc
Definition: misc.hh:245
gem5::X86ISA::misc_reg::iorrBase
static RegIndex iorrBase(int index)
Definition: misc.hh:491
gem5::X86ISA::misc_reg::Idtr
@ Idtr
Definition: misc.hh:319
gem5::X86ISA::misc_reg::NumRegs
@ NumRegs
Definition: misc.hh:408
gem5::X86ISA::misc_reg::KernelGsBase
@ KernelGsBase
Definition: misc.hh:264
gem5::X86ISA::rpl
Bitfield< 1, 0 > rpl
Definition: misc.hh:869
gem5::X86ISA::vm
Bitfield< 17 > vm
Definition: misc.hh:567
gem5::X86ISA::misc_reg::Dr7
@ Dr7
Definition: misc.hh:142
gem5::X86ISA::unusable
Bitfield< 2 > unusable
Definition: misc.hh:994
gem5::X86ISA::eipv
Bitfield< 1 > eipv
Definition: misc.hh:716
gem5::X86ISA::misc_reg::Pat
@ Pat
Definition: misc.hh:207
gem5::X86ISA::misc_reg::MtrrPhysMaskEnd
@ MtrrPhysMaskEnd
Definition: misc.hh:193
gem5::X86ISA::misc_reg::Tsl
@ Tsl
Definition: misc.hh:314
gem5::MiscRegClass
@ MiscRegClass
Control (misc) register.
Definition: reg_class.hh:69
gem5::X86ISA::misc_reg::HsEffBase
@ HsEffBase
Definition: misc.hh:347
gem5::X86ISA::avl
Bitfield< 11, 9 > avl
Definition: pagetable.hh:142
gem5::X86ISA::granularity
Bitfield< 6 > granularity
Definition: misc.hh:998
gem5::X86ISA::misc_reg::TrAttr
@ TrAttr
Definition: misc.hh:384
gem5::X86ISA::os
Bitfield< 17 > os
Definition: misc.hh:810
gem5::X86ISA::misc_reg::MtrrPhysBaseEnd
@ MtrrPhysBaseEnd
Definition: misc.hh:182
gem5::X86ISA::index
Bitfield< 5, 3 > index
Definition: types.hh:98
gem5::X86ISA::over
Bitfield< 62 > over
Definition: misc.hh:775
gem5::X86ISA::misc_reg::Fs
@ Fs
Definition: misc.hh:311
gem5::X86ISA::misc_reg::SysenterEsp
@ SysenterEsp
Definition: misc.hh:159
gem5::X86ISA::misc_reg::Fooff
@ Fooff
Definition: misc.hh:398
gem5::X86ISA::misc_reg::McStatusBase
@ McStatusBase
Definition: misc.hh:222
gem5::X86ISA::misc_reg::Ftag
@ Ftag
Definition: misc.hh:394
gem5::X86ISA::selector
Bitfield< 31, 16 > selector
Definition: misc.hh:1010
gem5::X86ISA::inv
Bitfield< 23 > inv
Definition: misc.hh:815
gem5::X86ISA::am
Bitfield< 18 > am
Definition: misc.hh:602
gem5::X86ISA::targetEip
targetEip
Definition: misc.hh:797
gem5::X86ISA::rd
Bitfield< 4 > rd
Definition: misc.hh:828
gem5::X86ISA::misc_reg::MtrrFix16kA0000
@ MtrrFix16kA0000
Definition: misc.hh:197
gem5::X86ISA::misc_reg::Cs
@ Cs
Definition: misc.hh:308
gem5::X86ISA::misc_reg::PerfEvtCtr3
@ PerfEvtCtr3
Definition: misc.hh:279
gem5::X86ISA::misc_reg::Tr
@ Tr
Definition: misc.hh:318
gem5::X86ISA::ezf
Bitfield< 5 > ezf
Definition: misc.hh:552
gem5::X86ISA::misc_reg::mcCtl
static RegIndex mcCtl(int index)
Definition: misc.hh:449
reg_class.hh
gem5::X86ISA::misc_reg::Ls
@ Ls
Definition: misc.hh:316
gem5::X86ISA::AFBit
@ AFBit
Definition: misc.hh:64
gem5::X86ISA::pce
Bitfield< 8 > pce
Definition: misc.hh:637
gem5::X86ISA::misc_reg::IorrBase0
@ IorrBase0
Definition: misc.hh:285
gem5::X86ISA::misc_reg::Fcw
@ Fcw
Definition: misc.hh:391
gem5::X86ISA::misc_reg::MtrrPhysBase5
@ MtrrPhysBase5
Definition: misc.hh:179
gem5::X86ISA::misc_reg::EsAttr
@ EsAttr
Definition: misc.hh:373
gem5::X86ISA::l1
Bitfield< 2 > l1
Definition: misc.hh:665
gem5::X86ISA::misc_reg::Tsc
@ Tsc
Definition: misc.hh:154
gem5::X86ISA::et
Bitfield< 4 > et
Definition: misc.hh:605
logging.hh
gem5::X86ISA::d
Bitfield< 6 > d
Definition: pagetable.hh:145
gem5::X86ISA::pe
Bitfield< 0 > pe
Definition: misc.hh:609
gem5::X86ISA::misc_reg::Cr8
@ Cr8
Definition: misc.hh:124
gem5::X86ISA::cd
Bitfield< 30 > cd
Definition: misc.hh:600
gem5::X86ISA::PFBit
@ PFBit
Definition: misc.hh:62
gem5::X86ISA::pcide
Bitfield< 17 > pcide
Definition: misc.hh:631
gem5::X86ISA::p
Bitfield< 0 > p
Definition: pagetable.hh:151
gem5::X86ISA::misc_reg::VmCr
@ VmCr
Definition: misc.hh:297
gem5::X86ISA::misc_reg::CsAttr
@ CsAttr
Definition: misc.hh:374
gem5::X86ISA::IFBit
@ IFBit
Definition: misc.hh:78
gem5::X86ISA::misc_reg::MtrrPhysMaskBase
@ MtrrPhysMaskBase
Definition: misc.hh:184
gem5::X86ISA::fix
Bitfield< 8 > fix
Definition: misc.hh:687
gem5::X86ISA::misc_reg::SegEffBaseBase
@ SegEffBaseBase
Definition: misc.hh:340
gem5::X86ISA::misc_reg::PerfEvtSel3
@ PerfEvtSel3
Definition: misc.hh:272
gem5::X86ISA::misc_reg::LsBase
@ LsBase
Definition: misc.hh:332
gem5::X86ISA::misc_reg::PerfEvtCtr1
@ PerfEvtCtr1
Definition: misc.hh:277
gem5::X86ISA::pse
Bitfield< 4 > pse
Definition: misc.hh:641
gem5::X86ISA::nw
Bitfield< 29 > nw
Definition: misc.hh:601
gem5::X86ISA::misc_reg::TslBase
@ TslBase
Definition: misc.hh:330
gem5::X86ISA::misc_reg::Cr1
@ Cr1
Definition: misc.hh:117
gem5::X86ISA::syscallCsAndSs
Bitfield< 47, 32 > syscallCsAndSs
Definition: misc.hh:798
gem5::X86ISA::physmask
Bitfield< 51, 12 > physmask
Definition: misc.hh:740
gem5::RegIndex
uint16_t RegIndex
Definition: types.hh:176
gem5::X86ISA::misc_reg::MtrrPhysBase0
@ MtrrPhysBase0
Definition: misc.hh:174
gem5::X86ISA::misc_reg::mtrrPhysMask
static RegIndex mtrrPhysMask(int index)
Definition: misc.hh:442
gem5::X86ISA::misc_reg::TscAux
@ TscAux
Definition: misc.hh:266
gem5::X86ISA::misc_reg::Dr6
@ Dr6
Definition: misc.hh:141
gem5::X86ISA::limitLow
Bitfield< 15, 0 > limitLow
Definition: misc.hh:930
gem5::X86ISA::misc_reg::Cr5
@ Cr5
Definition: misc.hh:121
gem5::X86ISA::misc_reg::MtrrFix4kE8000
@ MtrrFix4kE8000
Definition: misc.hh:203
gem5::X86ISA::svme
Bitfield< 12 > svme
Definition: misc.hh:792
gem5::X86ISA::counterMask
Bitfield< 31, 24 > counterMask
Definition: misc.hh:816
gem5::X86ISA::misc_reg::Mc7Ctl
@ Mc7Ctl
Definition: misc.hh:219
gem5::X86ISA::misc_reg::IorrBaseBase
@ IorrBaseBase
Definition: misc.hh:284
gem5::X86ISA::pdtb
Bitfield< 31, 12 > pdtb
Definition: misc.hh:620
gem5
Reference material can be found at the JEDEC website: UFS standard http://www.jedec....
Definition: gpu_translation_state.hh:37
gem5::X86ISA::pwt
Bitfield< 3 > pwt
Definition: pagetable.hh:148
gem5::X86ISA::misc_reg::Ftw
@ Ftw
Definition: misc.hh:393
gem5::X86ISA::misc_reg::Mc7Status
@ Mc7Status
Definition: misc.hh:230
gem5::X86ISA::misc_reg::perfEvtSel
static RegIndex perfEvtSel(int index)
Definition: misc.hh:477
gem5::X86ISA::misc_reg::M5Reg
@ M5Reg
Definition: misc.hh:148
gem5::X86ISA::modelSpecificCode
Bitfield< 31, 16 > modelSpecificCode
Definition: misc.hh:768
gem5::X86ISA::misc_reg::IdtrAttr
@ IdtrAttr
Definition: misc.hh:385
gem5::X86ISA::sf
Bitfield< 7 > sf
Definition: misc.hh:550
gem5::X86ISA::CC1Bit
@ CC1Bit
Definition: misc.hh:102
gem5::X86ISA::offsetLow
Bitfield< 15, 0 > offsetLow
Definition: misc.hh:1009
gem5::X86ISA::mfdm
Bitfield< 19 > mfdm
Definition: misc.hh:821
gem5::X86ISA::g1
Bitfield< 3 > g1
Definition: misc.hh:666
gem5::X86ISA::misc_reg::IorrMask1
@ IorrMask1
Definition: misc.hh:291
gem5::X86ISA::l2
Bitfield< 4 > l2
Definition: misc.hh:667
gem5::X86ISA::misc_reg::EsEffBase
@ EsEffBase
Definition: misc.hh:341
gem5::X86ISA::misc_reg::MsAttr
@ MsAttr
Definition: misc.hh:383
gem5::X86ISA::s
Bitfield< 44 > s
Definition: misc.hh:934
gem5::X86ISA::X87StatusBit
X87StatusBit
Definition: misc.hh:88
gem5::X86ISA::misc_reg::Cr6
@ Cr6
Definition: misc.hh:122
gem5::X86ISA::misc_reg::segLimit
static RegIndex segLimit(int index)
Definition: misc.hh:526
gem5::X86ISA::misc_reg::CrBase
@ CrBase
Definition: misc.hh:115
gem5::X86ISA::misc_reg::Mc2Addr
@ Mc2Addr
Definition: misc.hh:236
gem5::X86ISA::targetCS
targetCS
Definition: misc.hh:695
gem5::X86ISA::g0
Bitfield< 1 > g0
Definition: misc.hh:664
gem5::X86ISA::misc_reg::Ds
@ Ds
Definition: misc.hh:310
gem5::X86ISA::ecf
Bitfield< 3 > ecf
Definition: misc.hh:554
gem5::X86ISA::cf
Bitfield< 0 > cf
Definition: misc.hh:556
gem5::X86ISA::misc_reg::PerfEvtSel2
@ PerfEvtSel2
Definition: misc.hh:271
gem5::X86ISA::unitMask
Bitfield< 15, 8 > unitMask
Definition: misc.hh:808
gem5::X86ISA::misc_reg::Gs
@ Gs
Definition: misc.hh:312
gem5::X86ISA::prot
Bitfield< 7 > prot
Definition: misc.hh:587
gem5::X86ISA::misc_reg::LastExceptionToIp
@ LastExceptionToIp
Definition: misc.hh:171
gem5::X86ISA::misc_reg::SegLimitBase
@ SegLimitBase
Definition: misc.hh:356
gem5::X86ISA::a
Bitfield< 5 > a
Definition: pagetable.hh:146
gem5::X86ISA::vip
Bitfield< 20 > vip
Definition: misc.hh:564
gem5::X86ISA::EndSubBitUnion
EndSubBitUnion(type) EndBitUnion(SegDescriptor) BitUnion64(TSSlow) Bitfield< 63
TSS Descriptor (long mode - 128 bits) the lower 64 bits.
gem5::X86ISA::CfofMask
constexpr uint32_t CfofMask
Definition: misc.hh:72
gem5::X86ISA::limitHigh
Bitfield< 51, 48 > limitHigh
Definition: misc.hh:929
gem5::X86ISA::misc_reg::TopMem
@ TopMem
Definition: misc.hh:294
gem5::X86ISA::PEBit
@ PEBit
Definition: misc.hh:96
gem5::X86ISA::misc_reg::GsAttr
@ GsAttr
Definition: misc.hh:378
gem5::X86ISA::misc_reg::PerfEvtSel0
@ PerfEvtSel0
Definition: misc.hh:269
gem5::X86ISA::misc_reg::MtrrPhysBase2
@ MtrrPhysBase2
Definition: misc.hh:176
gem5::X86ISA::misc_reg::GsEffBase
@ GsEffBase
Definition: misc.hh:346
gem5::X86ISA::misc_reg::MtrrPhysMask6
@ MtrrPhysMask6
Definition: misc.hh:191
gem5::X86ISA::misc_reg::LsEffBase
@ LsEffBase
Definition: misc.hh:350

Generated on Sun Jul 30 2023 01:56:48 for gem5 by doxygen 1.8.17