summaryrefslogtreecommitdiffstats
path: root/sys/amd64
diff options
context:
space:
mode:
authorjhb <jhb@FreeBSD.org>2000-05-27 06:25:35 +0000
committerjhb <jhb@FreeBSD.org>2000-05-27 06:25:35 +0000
commita8972b65e2a16b1a4df1afd5333920446a9886d0 (patch)
treecafaf89a6b2088f3416d61895e2452d6b8956597 /sys/amd64
parent2bfcae8790ac122982b9434190b8c80c29455161 (diff)
downloadFreeBSD-src-a8972b65e2a16b1a4df1afd5333920446a9886d0.zip
FreeBSD-src-a8972b65e2a16b1a4df1afd5333920446a9886d0.tar.gz
- 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
Diffstat (limited to 'sys/amd64')
-rw-r--r--sys/amd64/amd64/mpboot.S11
1 files changed, 1 insertions, 10 deletions
diff --git a/sys/amd64/amd64/mpboot.S b/sys/amd64/amd64/mpboot.S
index 9eb2d7c..ac24c66 100644
--- a/sys/amd64/amd64/mpboot.S
+++ b/sys/amd64/amd64/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
/*
OpenPOWER on IntegriCloud