@ -626,13 +626,6 @@ ENTRY(_system_call)
p0 = [ s p + P T _ O R I G _ P 0 ] ;
# endif / * C O N F I G _ I P I P E * /
/* Check the System Call */
r7 = _ _ N R _ s y s c a l l ;
/* System call number is passed in P0 */
r6 = p0 ;
cc = r6 < r7 ;
if ! c c j u m p . L b a d s y s ;
/* are we tracing syscalls?*/
r7 = s p ;
r6 . l = l o ( A L I G N _ P A G E _ M A S K ) ;
@ -645,6 +638,12 @@ ENTRY(_system_call)
CC = B I T T S T ( r7 ,T I F _ S I N G L E S T E P ) ;
if C C J U M P _ s y s _ t r a c e ;
/* Make sure the system call # is valid */
p4 = _ _ N R _ s y s c a l l ;
/* System call number is passed in P0 */
cc = p4 < = p0 ;
if c c j u m p . L b a d s y s ;
/* Execute the appropriate system call */
p4 = p0 ;
@ -741,9 +740,14 @@ _sys_trace:
r0 = s p ;
pseudo_ l o n g _ c a l l _ s y s c a l l _ t r a c e _ e n t e r , p5 ;
/* Execute the appropriate system call */
/* Make sure the system call # is valid */
p4 = [ S P + P T _ P 0 ] ;
p3 = _ _ N R _ s y s c a l l ;
cc = p3 < = p4 ;
r0 = - E N O S Y S ;
if c c j u m p . L s y s _ t r a c e _ b a d s y s ;
/* Execute the appropriate system call */
p5 . l = _ s y s _ c a l l _ t a b l e ;
p5 . h = _ s y s _ c a l l _ t a b l e ;
p5 = p5 + ( p4 < < 2 ) ;
@ -761,6 +765,7 @@ _sys_trace:
SP + = - 1 2 ;
call ( p5 ) ;
SP + = 2 4 ;
.Lsys_trace_badsys :
[ sp + P T _ R 0 ] = r0 ;
r0 = s p ;