Type of the interrupt handlers on x86 cannot be expressed in C.

Simplify and unify placeholder type definitions.

Reviewed by:	jhb
Sponsored by:	The FreeBSD Foundation
Differential revision:	https://reviews.freebsd.org/D5771
This commit is contained in:
kib 2016-03-29 19:56:48 +00:00
parent 66f03b034f
commit eb986c64f5
5 changed files with 9 additions and 6 deletions

View File

@ -83,7 +83,7 @@
#ifndef LOCORE
typedef void inthand_t(u_int cs, u_int ef, u_int esp, u_int ss);
typedef void inthand_t(void);
#define IDTVEC(name) __CONCAT(X,name)

View File

@ -36,9 +36,6 @@
extern uint64_t *vm_page_dump;
/* XXX */
typedef void alias_for_inthand_t(u_int cs, u_int ef, u_int esp, u_int ss);
struct savefpu;
void amd64_db_resume_dbreg(void);

View File

@ -83,7 +83,7 @@
#ifndef LOCORE
typedef void inthand_t(u_int cs, u_int ef, u_int esp, u_int ss);
typedef void inthand_t(void);
#define IDTVEC(name) __CONCAT(X,name)

View File

@ -46,7 +46,6 @@ extern int szosigcode;
#endif
extern uint32_t *vm_page_dump;
typedef void alias_for_inthand_t(u_int cs, u_int ef, u_int esp, u_int ss);
struct segment_descriptor;
union savefpu;

View File

@ -86,6 +86,13 @@ struct fpreg;
struct dbreg;
struct dumperinfo;
/*
* The interface type of the interrupt handler entry point cannot be
* expressed in C. Use simplest non-variadic function type as an
* approximation.
*/
typedef void alias_for_inthand_t(void);
void *alloc_fpusave(int flags);
void busdma_swi(void);
bool cpu_mwait_usable(void);