vectors.S (1151B)
1#include "core-isa.h" 2 3.macro vector name 4 5.section .vector.\name, "ax" 6.global vector_\name 7vector_\name\(): 8 j 1f 9 .literal_position 101: 11 wsr a0, excsave1 12 movi a0, 1f 13 ret.n 14 15.section .vector.\name\().text, "ax" 16 .literal_position 171: 18 rsr a0, excsave1 19 wsr a2, excsave1 20 movi a2, handler_\name 21 l32i a2, a2, 0 22 beqz a2, 1f 23 jx a2 241: 25 movi a3, 1b 26 movi a2, 1 27 simcall 28 29.align 4 30.global handler_\name 31handler_\name\(): .word 0 32 33.endm 34 35#if XCHAL_HAVE_WINDOWED 36vector window_overflow_4 37vector window_overflow_8 38vector window_overflow_12 39vector window_underflow_4 40vector window_underflow_8 41vector window_underflow_12 42#endif 43 44#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 2 45vector level2 46#endif 47#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 3 48vector level3 49#endif 50#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 4 51vector level4 52#endif 53#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 5 54vector level5 55#endif 56#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 6 57vector level6 58#endif 59#if XCHAL_NUM_INTLEVELS + XCHAL_HAVE_NMI >= 7 60vector level7 61#endif 62 63vector kernel 64vector user 65vector double