tests/tcg/xtensa: move exception handlers to separate section
Not all CPU configurations may have enough space for handler code between exception/interrupt vectors. Leave jumps to the handlers at the vectors, but move all handlers past the vectors area. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
This commit is contained in:
parent
e8e05fd472
commit
f81aa02e0d
|
@ -24,64 +24,71 @@ SECTIONS
|
|||
|
||||
.vector :
|
||||
{
|
||||
#if XCHAL_HAVE_WINDOWED
|
||||
. = XCHAL_WINDOW_OF4_VECOFS;
|
||||
*(.vector.window_overflow_4)
|
||||
*(.vector.window_overflow_4.*)
|
||||
. = XCHAL_WINDOW_UF4_VECOFS;
|
||||
*(.vector.window_underflow_4)
|
||||
*(.vector.window_underflow_4.*)
|
||||
. = XCHAL_WINDOW_OF8_VECOFS;
|
||||
*(.vector.window_overflow_8)
|
||||
*(.vector.window_overflow_8.*)
|
||||
. = XCHAL_WINDOW_UF8_VECOFS;
|
||||
*(.vector.window_underflow_8)
|
||||
*(.vector.window_underflow_8.*)
|
||||
. = XCHAL_WINDOW_OF12_VECOFS;
|
||||
*(.vector.window_overflow_12)
|
||||
*(.vector.window_overflow_12.*)
|
||||
. = XCHAL_WINDOW_UF12_VECOFS;
|
||||
*(.vector.window_underflow_12)
|
||||
*(.vector.window_underflow_12.*)
|
||||
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 2
|
||||
. = XCHAL_INTLEVEL2_VECOFS;
|
||||
*(.vector.level2)
|
||||
*(.vector.level2.*)
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 3
|
||||
. = XCHAL_INTLEVEL3_VECOFS;
|
||||
*(.vector.level3)
|
||||
*(.vector.level3.*)
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 4
|
||||
. = XCHAL_INTLEVEL4_VECOFS;
|
||||
*(.vector.level4)
|
||||
*(.vector.level4.*)
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 5
|
||||
. = XCHAL_INTLEVEL5_VECOFS;
|
||||
*(.vector.level5)
|
||||
*(.vector.level5.*)
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 6
|
||||
. = XCHAL_INTLEVEL6_VECOFS;
|
||||
*(.vector.level6)
|
||||
*(.vector.level6.*)
|
||||
#endif
|
||||
#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 7
|
||||
. = XCHAL_INTLEVEL7_VECOFS;
|
||||
*(.vector.level7)
|
||||
*(.vector.level7.*)
|
||||
#endif
|
||||
|
||||
. = XCHAL_KERNEL_VECOFS;
|
||||
*(.vector.kernel)
|
||||
*(.vector.kernel.*)
|
||||
. = XCHAL_USER_VECOFS;
|
||||
*(.vector.user)
|
||||
*(.vector.user.*)
|
||||
. = XCHAL_DOUBLEEXC_VECOFS;
|
||||
*(.vector.double)
|
||||
} > ram
|
||||
|
||||
.vector.text :
|
||||
{
|
||||
*(.vector.window_overflow_4.*)
|
||||
*(.vector.window_underflow_4.*)
|
||||
*(.vector.window_overflow_8.*)
|
||||
*(.vector.window_underflow_8.*)
|
||||
*(.vector.window_overflow_12.*)
|
||||
*(.vector.window_underflow_12.*)
|
||||
|
||||
*(.vector.level2.*)
|
||||
*(.vector.level3.*)
|
||||
*(.vector.level4.*)
|
||||
*(.vector.level5.*)
|
||||
*(.vector.level6.*)
|
||||
*(.vector.level7.*)
|
||||
|
||||
*(.vector.kernel.*)
|
||||
*(.vector.user.*)
|
||||
*(.vector.double.*)
|
||||
} > ram
|
||||
|
||||
|
|
Loading…
Reference in a new issue