BREAK.N — Narrow Breakpoint

Instruction Word

Slot
Inst16b
6
3
6
2
6
1
6
0
5
9
5
8
5
7
5
6
5
5
5
4
5
3
5
2
5
1
5
0
4
9
4
8
4
7
4
6
4
5
4
4
4
3
4
2
4
1
4
0
3
9
3
8
3
7
3
6
3
5
3
4
3
3
3
2
3
1
3
0
2
9
2
8
2
7
2
6
2
5
2
4
2
3
2
2
2
1
2
0
1
9
1
8
1
7
1
6
1
5
1
4
1
3
1
2
1
1
1
0
9876543210
Format x16b - 16 bit(s) 110
BREAK.N 1111 00101101
s 3210

Assembler Syntax

BREAK.N 0..15

C Syntax

#include <xtensa/tie/xt_debug.h>

extern void XT_BREAK_N(immediate imms);

Description

(please consult the Xtensa ® Instruction Set Architecture Reference Manual for any cross references and additional information)

BREAK.N is similar in operation to BREAK ( BREAK 0..15, 0..15), except that it is encoded in a
16-bit format instead of 24 bits, there is only a 4-bit imm field, and a different bit is set in DEBUGCAUSE. Use this instruction to set breakpoints on 16-bit instructions.

Operation

if PS.INTLEVEL < DEBUGLEVEL then
	EPC[DEBUGLEVEL] ← PC
	EPS[DEBUGLEVEL] ← PS
	DEBUGCAUSE ← 010000
	nextPC ← InterruptVector[DEBUGLEVEL]
	PS.EXCM ← 1
	PS.INTLEVEL ← DEBUGLEVEL
endif

Exceptions

EveryInst Group (see EveryInst Group:)DebugExcep(BREAK.N) if Debug Option

Implementation Pipeline

In Out
PSEXCM Mstage, PSINTLEVEL Mstage

Protos that use BREAK.N

proto BREAK.N { in immediate imms }{}{
BREAK.N imms + 0;
}