Commit d8748e73 authored by Michal Simek's avatar Michal Simek
Browse files

microblaze: Do not use r0_ram space for syscall debugging



Remove syscall counting space from r0_ram. Use special
syscall_debug_table pool for syscall statistic.

Signed-off-by: default avatarMichal Simek <monstr@monstr.eu>
parent 495162df
Loading
Loading
Loading
Loading
+16 −3
Original line number Diff line number Diff line
@@ -39,6 +39,15 @@
/* The offset of the struct pt_regs in a `state save frame' on the stack. */
#define PTO	STATE_SAVE_ARG_SPACE /* 24 the space for args */

#ifdef DEBUG
/* Create space for syscalls counting. */
.section .data
.global syscall_debug_table
.align 4
syscall_debug_table:
	.space	(__NR_syscalls * 4)
#endif /* DEBUG */

#define C_ENTRY(name)	.globl name; .align 4; name

/*
@@ -371,10 +380,14 @@ C_ENTRY(_user_exception):
	add	r12, r12, r12;

#ifdef DEBUG
	/* Trac syscalls and stored them to r0_ram */
	lwi	r3, r12, 0x400 + r0_ram
	/* Trac syscalls and stored them to syscall_debug_table */
	/* The first syscall location stores total syscall number */
	lwi	r3, r0, syscall_debug_table
	addi	r3, r3, 1
	swi	r3, r0, syscall_debug_table
	lwi	r3, r12, syscall_debug_table
	addi	r3, r3, 1
	swi	r3, r12, 0x400 + r0_ram
	swi	r3, r12, syscall_debug_table
#endif

	# Find and jump into the syscall handler.