From a8972b65e2a16b1a4df1afd5333920446a9886d0 Mon Sep 17 00:00:00 2001 From: jhb Date: Sat, 27 May 2000 06:25:35 +0000 Subject: - Remove unnecessary 'data32' and 'addr32' prefixes and #define's. - Go ahead and use 'lgdt' again instead of hand-assembling the instruction. During testing this code worked fine. If for some reason a 32-bit offset is needed, 'lgdtl' should be used instead of reverting to manual machine code. Tested by: peter --- sys/i386/i386/mpboot.s | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) (limited to 'sys/i386') diff --git a/sys/i386/i386/mpboot.s b/sys/i386/i386/mpboot.s index 9eb2d7c..ac24c66 100644 --- a/sys/i386/i386/mpboot.s +++ b/sys/i386/i386/mpboot.s @@ -156,9 +156,6 @@ NON_GPROF_ENTRY(wait_ap) * 1Meg. -jackv */ -#define data32 .byte 0x66 -#define addr32 .byte 0x67 - .data ALIGN_DATA /* just to be sure */ @@ -186,17 +183,11 @@ NON_GPROF_ENTRY(bootMP) mov $(boot_stk-_bootMP), %esp /* Now load the global descriptor table */ - addr32 - data32 - /* XXX: sigh: lgdt MP_GDTptr-_bootMP GAS BUG! */ - .byte 0x0f, 0x01, 0x15 /* XXX hand assemble! */ - .long MP_GDTptr-_bootMP /* XXX hand assemble! */ + lgdt MP_GDTptr-_bootMP /* Enable protected mode */ - data32 movl %cr0, %eax orl $CR0_PE, %eax - data32 movl %eax, %cr0 /* -- cgit v1.1