- Merge breakpoint.S and tblfush.S into cpu.S
Deleted: trunk/reactos/ntoskrnl/ke/i386/brkpoint.S
Added: trunk/reactos/ntoskrnl/ke/i386/cpu.S
Deleted: trunk/reactos/ntoskrnl/ke/i386/tlbflush.S
Modified: trunk/reactos/ntoskrnl/ntoskrnl.xml

Deleted: trunk/reactos/ntoskrnl/ke/i386/brkpoint.S
--- trunk/reactos/ntoskrnl/ke/i386/brkpoint.S	2006-01-16 17:07:45 UTC (rev 20915)
+++ trunk/reactos/ntoskrnl/ke/i386/brkpoint.S	2006-01-16 17:17:16 UTC (rev 20916)
@@ -1,14 +0,0 @@
-/* $Id: brkpoint.c 15164 2005-05-09 01:38:29Z sedwards $
- *
- * COPYRIGHT:       See COPYING in the top level directory
- * PROJECT:         ReactOS kernel
- * FILE:            ntoskrnl/ke/i386/brkpoint.c
- * PURPOSE:         Handles breakpoints
- *
- * PROGRAMMERS:     No programmer listed.
- */
-
-.global _DbgBreakPointNoBugCheck@0
-_DbgBreakPointNoBugCheck@0:
-	int $3
-	ret

Added: trunk/reactos/ntoskrnl/ke/i386/cpu.S
--- trunk/reactos/ntoskrnl/ke/i386/cpu.S	2006-01-16 17:07:45 UTC (rev 20915)
+++ trunk/reactos/ntoskrnl/ke/i386/cpu.S	2006-01-16 17:17:16 UTC (rev 20916)
@@ -0,0 +1,46 @@
+/*
+ * COPYRIGHT:       See COPYING in the top level directory
+ * PROJECT:         ReactOS Kernel
+ * FILE:            ntoskrnl/ke/i386/cpu.S
+ * PURPOSE:         Handles CPU-centric operations: TLB Flushes, Breakpoints, FPU
+ * PROGRAMMERS:     Alex Ionescu
+ */
+
+/* INCLUDES ******************************************************************/
+
+#include <asm.h>
+.intel_syntax noprefix
+
+/* GLOBALS ****************************************************************/  
+
+
+/* FUNCTIONS ****************************************************************/
+
+.global _DbgBreakPointNoBugCheck@0
+.func DbgBreakPointNoBugCheck@0
+_DbgBreakPointNoBugCheck@0:
+    int 3
+    ret
+.endfunc
+
+.globl _KeFlushCurrentTb@0
+.func KeFlushCurrentTb@0
+_KeFlushCurrentTb@0:
+    /* Check for global page support */
+    test byte ptr [_Ke386GlobalPagesEnabled], 0xff
+    jz .L1
+
+    /* Modifying the PSE, PGE or PAE Flag in CR4 causes the TLB to be flushed */
+    mov eax, cr4
+    and eax, ~CR4_PGE
+    mov cr4, eax
+    or eax, CR4_PGE
+    mov cr4, eax
+    ret
+
+.L1:
+    /* the old way ... */
+    mov eax, cr3
+    mov cr3, eax
+    ret
+.endfunc

Deleted: trunk/reactos/ntoskrnl/ke/i386/tlbflush.S
--- trunk/reactos/ntoskrnl/ke/i386/tlbflush.S	2006-01-16 17:07:45 UTC (rev 20915)
+++ trunk/reactos/ntoskrnl/ke/i386/tlbflush.S	2006-01-16 17:17:16 UTC (rev 20916)
@@ -1,29 +0,0 @@
-/*
- * i386-specific implemetation of Translation Buffer Flushing
- * Written By: Alex Ionescu <alex@relsoft.net>
- * Reference: IA-32 Intel« Architecture Software Developer's Manual, Volume 3: System Programming Guide,
- *            Chapter 10 - Memory Cache Control. Section 10.9 - Invalidating the Translation Lookaside Buffers
- */
-
-#include <internal/i386/ke.h>
-
-
-.globl _KeFlushCurrentTb@0
-_KeFlushCurrentTb@0:
-    /* Check for global page support */
-    testb  $0xff, (_Ke386GlobalPagesEnabled)
-    jz     .L1
-
-    /* Modifying the PSE, PGE or PAE Flag in CR4 causes the TLB to be flushed */
-    movl   %cr4, %eax
-    andl   $~X86_CR4_PGE, %eax
-    movl   %eax, %cr4
-    orl    $X86_CR4_PGE, %eax
-    movl   %eax, %cr4
-    ret
-
-.L1:
-    /* the old way ... */
-    movl   %cr3, %eax
-    movl   %eax, %cr3
-    ret

Modified: trunk/reactos/ntoskrnl/ntoskrnl.xml
--- trunk/reactos/ntoskrnl/ntoskrnl.xml	2006-01-16 17:07:45 UTC (rev 20915)
+++ trunk/reactos/ntoskrnl/ntoskrnl.xml	2006-01-16 17:17:16 UTC (rev 20916)
@@ -25,7 +25,7 @@
 			<directory name="i386">
 				<file first="true">main_asm.S</file>
 				<file>bios.c</file>
-				<file>brkpoint.S</file>
+				<file>cpu.S</file>
 				<file>ctxswitch.S</file>
 				<file>exp.c</file>
 				<file>fpu.c</file>
@@ -37,7 +37,6 @@
 				<file>ldt.c</file>
 				<file>syscall.S</file>
 				<file>thread.c</file>
-				<file>tlbflush.S</file>
 				<file>trap.s</file>
 				<file>tss.c</file>
 				<file>usercall_asm.S</file>