#include <arm/exception.h>

#define TRAP_TABLE_ENTRY_NAME(n) \
	exc_entry ## n

#define TRAP_TABLE_ENTRY(n) \
	TRAP_TABLE_ENTRY_NAME(n) = DEFINED(EXC_HANDLER_NAME(n)) ? EXC_HANDLER_NAME(n) : exp_default_entry;

SECTIONS {
	.trap_table : {
		TRAP_TABLE_ENTRY(2) TRAP_TABLE_ENTRY(3)
		TRAP_TABLE_ENTRY(4) TRAP_TABLE_ENTRY(5)
		TRAP_TABLE_ENTRY(6) TRAP_TABLE_ENTRY(7)
		TRAP_TABLE_ENTRY(8) TRAP_TABLE_ENTRY(9)
		TRAP_TABLE_ENTRY(10) TRAP_TABLE_ENTRY(11)
		TRAP_TABLE_ENTRY(12) TRAP_TABLE_ENTRY(13)
		TRAP_TABLE_ENTRY(14) TRAP_TABLE_ENTRY(15)
	}
}
