Author: gadamopoulos Date: Sun Aug 1 16:27:48 2010 New Revision: 48397
URL: http://svn.reactos.org/svn/reactos?rev=48397&view=rev Log: [hal] - 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)))
Modified: trunk/reactos/hal/halx86/include/halp.h trunk/reactos/hal/halx86/up/pic.c
Modified: trunk/reactos/hal/halx86/include/halp.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/include/halp.h?r... ============================================================================== --- trunk/reactos/hal/halx86/include/halp.h [iso-8859-1] (original) +++ trunk/reactos/hal/halx86/include/halp.h [iso-8859-1] Sun Aug 1 16:27:48 2010 @@ -3,6 +3,13 @@ */
#pragma once + + +#ifdef _MSC_VER +#define REGISTERCALL FASTCALL +#else +#define REGISTERCALL __attribute__((regparm(3))) +#endif
typedef struct _HAL_BIOS_FRAME { @@ -408,15 +415,14 @@
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 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq15( IN KIRQL Irql, IN ULONG Irq, @@ -432,7 +438,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq13( IN KIRQL Irql, IN ULONG Irq, @@ -440,7 +446,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq07( IN KIRQL Irql, IN ULONG Irq, @@ -448,7 +454,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrqLevel( IN KIRQL Irql, IN ULONG Irq, @@ -456,7 +462,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq15Level( IN KIRQL Irql, IN ULONG Irq, @@ -464,7 +470,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq13Level( IN KIRQL Irql, IN ULONG Irq, @@ -472,7 +478,7 @@ );
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq07Level( IN KIRQL Irql, IN ULONG Irq,
Modified: trunk/reactos/hal/halx86/up/pic.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/hal/halx86/up/pic.c?rev=483... ============================================================================== --- trunk/reactos/hal/halx86/up/pic.c [iso-8859-1] (original) +++ trunk/reactos/hal/halx86/up/pic.c [iso-8859-1] Sun Aug 1 16:27:48 2010 @@ -813,7 +813,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrqGeneric(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -823,7 +823,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq15(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -859,7 +859,7 @@
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq13(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -872,7 +872,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq07(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -956,7 +956,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrqLevel(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -966,7 +966,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq15Level(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -1001,7 +1001,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq13Level(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -1014,7 +1014,7 @@ }
BOOLEAN -__attribute__((regparm(3))) +REGISTERCALL HalpDismissIrq07Level(IN KIRQL Irql, IN ULONG Irq, OUT PKIRQL OldIrql) @@ -1252,8 +1252,8 @@ }
VOID +DECLSPEC_NORETURN FASTCALL -DECLSPEC_NORETURN HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame) { /* Do the work */ @@ -1261,8 +1261,8 @@ }
VOID +DECLSPEC_NORETURN FASTCALL -DECLSPEC_NORETURN HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame) { /* Set up a fake INT Stack */ @@ -1301,8 +1301,8 @@ }
VOID +DECLSPEC_NORETURN FASTCALL -DECLSPEC_NORETURN HalpDispatchInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame) { KIRQL CurrentIrql;