- 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
This commit is contained in:
Giannis Adamopoulos 2010-08-01 16:27:48 +00:00
parent 071e036cb8
commit 84d8b7850d
2 changed files with 27 additions and 21 deletions

View file

@ -4,6 +4,13 @@
#pragma once #pragma once
#ifdef _MSC_VER
#define REGISTERCALL FASTCALL
#else
#define REGISTERCALL __attribute__((regparm(3)))
#endif
typedef struct _HAL_BIOS_FRAME typedef struct _HAL_BIOS_FRAME
{ {
ULONG SegSs; ULONG SegSs;
@ -408,15 +415,14 @@ typedef struct _PIC_MASK
typedef typedef
BOOLEAN BOOLEAN
__attribute__((regparm(3))) ( REGISTERCALL *PHAL_DISMISS_INTERRUPT)(
(*PHAL_DISMISS_INTERRUPT)(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql OUT PKIRQL OldIrql
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrqGeneric( HalpDismissIrqGeneric(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -424,7 +430,7 @@ HalpDismissIrqGeneric(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq15( HalpDismissIrq15(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -432,7 +438,7 @@ HalpDismissIrq15(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq13( HalpDismissIrq13(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -440,7 +446,7 @@ HalpDismissIrq13(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq07( HalpDismissIrq07(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -448,7 +454,7 @@ HalpDismissIrq07(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrqLevel( HalpDismissIrqLevel(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -456,7 +462,7 @@ HalpDismissIrqLevel(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq15Level( HalpDismissIrq15Level(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -464,7 +470,7 @@ HalpDismissIrq15Level(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq13Level( HalpDismissIrq13Level(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
@ -472,7 +478,7 @@ HalpDismissIrq13Level(
); );
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq07Level( HalpDismissIrq07Level(
IN KIRQL Irql, IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,

View file

@ -813,7 +813,7 @@ _HalpDismissIrqGeneric(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrqGeneric(IN KIRQL Irql, HalpDismissIrqGeneric(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -823,7 +823,7 @@ HalpDismissIrqGeneric(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq15(IN KIRQL Irql, HalpDismissIrq15(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -859,7 +859,7 @@ HalpDismissIrq15(IN KIRQL Irql,
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq13(IN KIRQL Irql, HalpDismissIrq13(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -872,7 +872,7 @@ HalpDismissIrq13(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq07(IN KIRQL Irql, HalpDismissIrq07(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -956,7 +956,7 @@ _HalpDismissIrqLevel(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrqLevel(IN KIRQL Irql, HalpDismissIrqLevel(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -966,7 +966,7 @@ HalpDismissIrqLevel(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq15Level(IN KIRQL Irql, HalpDismissIrq15Level(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -1001,7 +1001,7 @@ HalpDismissIrq15Level(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq13Level(IN KIRQL Irql, HalpDismissIrq13Level(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -1014,7 +1014,7 @@ HalpDismissIrq13Level(IN KIRQL Irql,
} }
BOOLEAN BOOLEAN
__attribute__((regparm(3))) REGISTERCALL
HalpDismissIrq07Level(IN KIRQL Irql, HalpDismissIrq07Level(IN KIRQL Irql,
IN ULONG Irq, IN ULONG Irq,
OUT PKIRQL OldIrql) OUT PKIRQL OldIrql)
@ -1252,8 +1252,8 @@ _HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame)
} }
VOID VOID
FASTCALL
DECLSPEC_NORETURN DECLSPEC_NORETURN
FASTCALL
HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame) HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
{ {
/* Do the work */ /* Do the work */
@ -1261,8 +1261,8 @@ HalpApcInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
} }
VOID VOID
FASTCALL
DECLSPEC_NORETURN DECLSPEC_NORETURN
FASTCALL
HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame) HalpApcInterruptHandler(IN PKTRAP_FRAME TrapFrame)
{ {
/* Set up a fake INT Stack */ /* Set up a fake INT Stack */
@ -1301,8 +1301,8 @@ _HalpDispatchInterruptHandler(VOID)
} }
VOID VOID
FASTCALL
DECLSPEC_NORETURN DECLSPEC_NORETURN
FASTCALL
HalpDispatchInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame) HalpDispatchInterrupt2ndEntry(IN PKTRAP_FRAME TrapFrame)
{ {
KIRQL CurrentIrql; KIRQL CurrentIrql;