@ -944,9 +944,9 @@ __kuser_helper_end:
/ *
* Vector s t u b s .
*
* This c o d e i s c o p i e d t o 0 x f f f f02 0 0 s o w e c a n u s e b r a n c h e s i n t h e
* vectors, r a t h e r t h a n l d r ' s . N o t e t h a t t h i s c o d e m u s t n o t
* exceed 0 x30 0 b y t e s .
* This c o d e i s c o p i e d t o 0 x f f f f1 0 0 0 s o w e c a n u s e b r a n c h e s i n t h e
* vectors, r a t h e r t h a n l d r ' s . N o t e t h a t t h i s c o d e m u s t n o t e x c e e d
* a p a g e s i z e .
*
* Common s t u b e n t r y m a c r o :
* Enter i n I R Q m o d e , s p s r = S V C / U S R C P S R , l r = S V C / U S R P C
@ -995,6 +995,15 @@ ENDPROC(vector_\name)
.globl __stubs_start
__stubs_start :
@ This must be the first word
.word vector_swi
vector_rst :
ARM( s w i S Y S _ E R R O R 0 )
THUMB( s v c #0 )
THUMB( n o p )
b v e c t o r _ u n d
/ *
* Interrupt d i s p a t c h e r
* /
@ -1088,6 +1097,16 @@ __stubs_start:
.align 5
/ * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
* Address e x c e p t i o n h a n d l e r
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* These a r e n ' t t o o c r i t i c a l .
* ( they' r e n o t s u p p o s e d t o h a p p e n , a n d w o n ' t h a p p e n i n 3 2 - b i t d a t a m o d e ) .
* /
vector_addrexcptn :
b v e c t o r _ a d d r e x c p t n
/ * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
* Undefined F I Q s
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
@ -1101,35 +1120,14 @@ __stubs_start:
vector_fiq :
subs p c , l r , #4
/ * = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
* Address e x c e p t i o n h a n d l e r
* - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
* These a r e n ' t t o o c r i t i c a l .
* ( they' r e n o t s u p p o s e d t o h a p p e n , a n d w o n ' t h a p p e n i n 3 2 - b i t d a t a m o d e ) .
* /
vector_addrexcptn :
b v e c t o r _ a d d r e x c p t n
/ *
* We g r o u p a l l t h e f o l l o w i n g d a t a t o g e t h e r t o o p t i m i s e
* for C P U s w i t h s e p a r a t e I & D c a c h e s .
* /
.align 5
.LCvswi :
.word vector_swi
.globl __stubs_end
__stubs_end :
.equ stubs_ o f f s e t , _ _ v e c t o r s _ s t a r t + 0 x2 0 0 - _ _ s t u b s _ s t a r t
.equ stubs_ o f f s e t , _ _ v e c t o r s _ s t a r t + 0 x10 0 0 - _ _ s t u b s _ s t a r t
.globl __vectors_start
__vectors_start :
ARM( s w i S Y S _ E R R O R 0 )
THUMB( s v c #0 )
THUMB( n o p )
W( b ) v e c t o r _ r s t + s t u b s _ o f f s e t
W( b ) v e c t o r _ u n d + s t u b s _ o f f s e t
W( l d r ) p c , . L C v s w i + s t u b s _ o f f s e t
W( b ) v e c t o r _ p a b t + s t u b s _ o f f s e t