コード例 #1
0
 internal static uint Get(uint descriptor)
 {
     DebugStub.Assert(IsType.Get(descriptor, L1.CoarsePageTableType) ||
                      IsType.Get(descriptor, L1.SectionType) ||
                      IsType.Get(descriptor, L1.FinePageTableType));
     return((descriptor & L1.DomainMask) >> L1.DomainRoll);
 }
コード例 #2
0
        internal static AccessPermission Get(uint descriptor)
        {
            DebugStub.Assert(IsType.Get(descriptor, L1.SectionType) ||
                             IsType.Get(descriptor, L1.SupersectionType));

            return((AccessPermission)((descriptor & L1.ApMask) >> L1.ApRoll));
        }
コード例 #3
0
        internal static void Set(ref uint descriptor, AccessPermission ap)
        {
            DebugStub.Assert(IsType.Get(descriptor, L1.SectionType) ||
                             IsType.Get(descriptor, L1.SupersectionType));

            descriptor = ((descriptor & ~L1.ApMask) | ((uint)ap) << L1.ApRoll);
        }
コード例 #4
0
        internal static uint Get(uint descriptor)
        {
            DebugStub.Assert(IsType.Get(descriptor, L1.SectionType) ||
                             IsType.Get(descriptor, L1.SupersectionType));

            return((descriptor & L1.TexMask) >> L1.TexRoll);
        }
コード例 #5
0
        internal static void Set(ref uint descriptor, uint tex)
        {
            DebugStub.Assert(IsType.Get(descriptor, L1.SectionType) ||
                             IsType.Get(descriptor, L1.SupersectionType));

            DebugStub.Assert(((tex << L1.TexRoll) & ~L1.TexMask) == 0);

            descriptor = (descriptor & L1.TexMask) | (tex << L1.TexRoll);
        }
コード例 #6
0
        internal static void Set(ref uint descriptor, uint domain)
        {
            DebugStub.Assert(IsType.Get(descriptor, L1.CoarsePageTableType) ||
                             IsType.Get(descriptor, L1.SectionType) ||
                             IsType.Get(descriptor, L1.FinePageTableType));

            DebugStub.Assert((domain & (L1.DomainMask >> L1.DomainRoll)) == 0);

            descriptor = ((descriptor & ~L1.DomainMask) |
                          (domain << L1.DomainRoll));
        }