[hal]
authorGiannis Adamopoulos <gadamopoulos@reactos.org>
Sun, 1 Aug 2010 16:27:48 +0000 (16:27 +0000)
committerGiannis Adamopoulos <gadamopoulos@reactos.org>
Sun, 1 Aug 2010 16:27:48 +0000 (16:27 +0000)
- define REGISTERCALL in order to replace __attribute__((regparm(3))) and fix compilation with msvc. It was used only as an optimization so it is safe to be defined as FASTCALL for msvc. For gcc it is still defined as __attribute__((regparm(3)))

svn path=/trunk/; revision=48397

reactos/hal/halx86/include/halp.h
reactos/hal/halx86/up/pic.c

index 0933178..7a5155d 100644 (file)
@@ -4,6 +4,13 @@
 
 #pragma once
 
+
+#ifdef _MSC_VER
+#define REGISTERCALL FASTCALL
+#else
+#define REGISTERCALL __attribute__((regparm(3)))
+#endif
+
 typedef struct _HAL_BIOS_FRAME
 {
     ULONG SegSs;
@@ -408,15 +415,14 @@ typedef struct _PIC_MASK
 
 typedef
 BOOLEAN
-__attribute__((regparm(3)))
-(*PHAL_DISMISS_INTERRUPT)(
+( REGISTERCALL *PHAL_DISMISS_INTERRUPT)(
     IN KIRQL Irql,
     IN ULONG Irq,
     OUT PKIRQL OldIrql
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrqGeneric(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -424,7 +430,7 @@ HalpDismissIrqGeneric(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq15(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -432,7 +438,7 @@ HalpDismissIrq15(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq13(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -440,7 +446,7 @@ HalpDismissIrq13(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq07(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -448,7 +454,7 @@ HalpDismissIrq07(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrqLevel(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -456,7 +462,7 @@ HalpDismissIrqLevel(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq15Level(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -464,7 +470,7 @@ HalpDismissIrq15Level(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq13Level(
     IN KIRQL Irql,
     IN ULONG Irq,
@@ -472,7 +478,7 @@ HalpDismissIrq13Level(
 );
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq07Level(
     IN KIRQL Irql,
     IN ULONG Irq,
index 91b902b..d441c1a 100644 (file)
@@ -813,7 +813,7 @@ _HalpDismissIrqGeneric(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrqGeneric(IN KIRQL Irql,
                       IN ULONG Irq,
                       OUT PKIRQL OldIrql)
@@ -823,7 +823,7 @@ HalpDismissIrqGeneric(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq15(IN KIRQL Irql,
                  IN ULONG Irq,
                  OUT PKIRQL OldIrql)
@@ -859,7 +859,7 @@ HalpDismissIrq15(IN KIRQL Irql,
 
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq13(IN KIRQL Irql,
                  IN ULONG Irq,
                  OUT PKIRQL OldIrql)
@@ -872,7 +872,7 @@ HalpDismissIrq13(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq07(IN KIRQL Irql,
                  IN ULONG Irq,
                  OUT PKIRQL OldIrql)
@@ -956,7 +956,7 @@ _HalpDismissIrqLevel(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrqLevel(IN KIRQL Irql,
                     IN ULONG Irq,
                     OUT PKIRQL OldIrql)
@@ -966,7 +966,7 @@ HalpDismissIrqLevel(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq15Level(IN KIRQL Irql,
                       IN ULONG Irq,
                       OUT PKIRQL OldIrql)
@@ -1001,7 +1001,7 @@ HalpDismissIrq15Level(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq13Level(IN KIRQL Irql,
                       IN ULONG Irq,
                       OUT PKIRQL OldIrql)
@@ -1014,7 +1014,7 @@ HalpDismissIrq13Level(IN KIRQL Irql,
 }
 
 BOOLEAN
-__attribute__((regparm(3)))
+REGISTERCALL
 HalpDismissIrq07Level(IN KIRQL Irql,
                       IN ULONG Irq,
                       OUT PKIRQL OldIrql)
@@ -1252,8 +1252,8 @@ _HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame)
 }
 
 VOID
-FASTCALL
 DECLSPEC_NORETURN
+FASTCALL
 HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
 {
     /* Do the work */
@@ -1261,8 +1261,8 @@ HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
 }
 
 VOID
-FASTCALL
 DECLSPEC_NORETURN
+FASTCALL
 HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame)
 {
     /* Set up a fake INT Stack */
@@ -1301,8 +1301,8 @@ _HalpDispatchInterruptHandler(VOID)
 }
 
 VOID
-FASTCALL
 DECLSPEC_NORETURN
+FASTCALL
 HalpDispatchInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
 {
     KIRQL CurrentIrql;