Get rid of the (incorrect) __attribute__((packed)) usage.

svn path=/trunk/; revision=16429
This commit is contained in:
Filip Navara 2005-07-05 17:08:48 +00:00
parent 51c604714a
commit d6ebf05ea0
2 changed files with 6 additions and 12 deletions

View file

@ -320,10 +320,7 @@ KdbpStepOverInstruction(ULONG_PTR Eip)
BOOLEAN BOOLEAN
KdbpStepIntoInstruction(ULONG_PTR Eip) KdbpStepIntoInstruction(ULONG_PTR Eip)
{ {
struct __attribute__((packed)) { KDESCRIPTOR Idtr;
USHORT Limit;
ULONG Base;
} Idtr;
UCHAR Mem[2]; UCHAR Mem[2];
INT IntVect; INT IntVect;
ULONG IntDesc[2]; ULONG IntDesc[2];
@ -353,7 +350,7 @@ KdbpStepIntoInstruction(ULONG_PTR Eip)
} }
/* Read the interrupt descriptor table register */ /* Read the interrupt descriptor table register */
asm volatile("sidt %0" : : "m"(Idtr)); asm volatile("sidt %0" : : "m"(Idtr.Limit));
if (IntVect >= (Idtr.Limit + 1) / 8) if (IntVect >= (Idtr.Limit + 1) / 8)
{ {
/*KdbpPrint("IDT does not contain interrupt vector %d\n.", IntVect);*/ /*KdbpPrint("IDT does not contain interrupt vector %d\n.", IntVect);*/

View file

@ -411,10 +411,7 @@ KdbpCmdRegs(ULONG Argc, PCHAR Argv[])
else if (Argv[0][0] == 'c') /* cregs */ else if (Argv[0][0] == 'c') /* cregs */
{ {
ULONG Cr0, Cr2, Cr3, Cr4; ULONG Cr0, Cr2, Cr3, Cr4;
struct __attribute__((packed)) { KDESCRIPTOR Gdtr, Ldtr, Idtr;
USHORT Limit;
ULONG Base;
} Gdtr, Ldtr, Idtr;
ULONG Tr; ULONG Tr;
STATIC CONST PCHAR Cr0Bits[32] = { " PE", " MP", " EM", " TS", " ET", " NE", NULL, NULL, STATIC CONST PCHAR Cr0Bits[32] = { " PE", " MP", " EM", " TS", " ET", " NE", NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
@ -431,9 +428,9 @@ KdbpCmdRegs(ULONG Argc, PCHAR Argv[])
Cr4 = KdbCurrentTrapFrame->Cr4; Cr4 = KdbCurrentTrapFrame->Cr4;
/* Get descriptor table regs */ /* Get descriptor table regs */
asm volatile("sgdt %0" : : "m"(Gdtr)); asm volatile("sgdt %0" : : "m"(Gdtr.Limit));
asm volatile("sldt %0" : : "m"(Ldtr)); asm volatile("sldt %0" : : "m"(Ldtr.Limit));
asm volatile("sidt %0" : : "m"(Idtr)); asm volatile("sidt %0" : : "m"(Idtr.Limit));
/* Get the task register */ /* Get the task register */
asm volatile("str %0" : "=g"(Tr)); asm volatile("str %0" : "=g"(Tr));