xref: /linux-4.1.27/arch/metag/kernel/tbiunexp.S
  • Home
  • History
  • Annotate
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/* Pass a breakpoint through to Codescape */
2
3#include <asm/tbx.h>
4
5	.text
6        .global	___TBIUnExpXXX
7        .type   ___TBIUnExpXXX,function
8___TBIUnExpXXX:
9	TSTT	D0Ar2,#TBICTX_CRIT_BIT	! Result of nestable int call?
10	BZ	$LTBINormCase		! UnExpXXX at background level
11	MOV	D0Re0,TXMASKI		! Read TXMASKI
12	XOR	TXMASKI,D1Re0,D1Re0	! Turn off BGNDHALT handling!
13	OR	D0Ar2,D0Ar2,D0Re0	! Preserve bits cleared
14$LTBINormCase:
15	MSETL 	[A0StP],D0Ar6,D0Ar4,D0Ar2	! Save args on stack
16	SETL 	[A0StP++],D0Ar2,D1Ar1	! Init area for returned values
17	SWITCH 	#0xC20208		! Total stack frame size 8 Dwords
18					!            write back size 2 Dwords
19	GETL 	D0Re0,D1Re0,[--A0StP]	! Get result
20	SUB 	A0StP,A0StP,#(8*3)	! Recover stack frame
21	MOV 	PC,D1RtP
22        .size   	___TBIUnExpXXX,.-___TBIUnExpXXX
23

served by {OpenGrok

Last Index Update: Mon Aug 18 23:48:56 JST 2025