Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3fb39c48 authored by Bernd Weiberg's avatar Bernd Weiberg Committed by Ley Foon Tan
Browse files

nios2: remove unused statistic counters



Removed some statistic counters to improve the performance of the handler.

Signed-off-by: default avatarBernd Weiberg <bernd.weiberg@siemens.com>
Signed-off-by: default avatarLey Foon Tan <lftan@altera.com>
parent db5a7e55
Loading
Loading
Loading
Loading
+0 −18
Original line number Diff line number Diff line
@@ -32,8 +32,6 @@
#define INST_STW	0x15
#define INST_LDW	0x17

static unsigned long ma_user, ma_kern, ma_skipped, ma_half, ma_word;

static unsigned int ma_usermode;
#define UM_WARN		0x01
#define UM_FIXUP	0x02
@@ -53,7 +51,6 @@ static int reg_offsets[32];
static inline u32 get_reg_val(struct pt_regs *fp, int reg)
{
	u8 *p = ((u8 *)fp) + reg_offsets[reg];

	return *(u32 *)p;
}

@@ -78,7 +75,6 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
	fp->ea -= 4;

	if (fixup_exception(fp)) {
		ma_skipped++;
		return;
	}

@@ -103,18 +99,11 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
			fault |= __get_user(d1, (u8 *)(addr+1));
			val = (d1 << 8) | d0;
			put_reg_val(fp, b, val);
			ma_half++;
			break;
		case INST_STH:
			val = get_reg_val(fp, b);
			d1 = val >> 8;
			d0 = val >> 0;

			pr_debug("sth: ra=%d (%08x) rb=%d (%08x), imm16 %04x addr %08x val %08x\n",
				a, get_reg_val(fp, a),
				b, get_reg_val(fp, b),
				imm16, addr, val);

			if (in_kernel) {
				*(u8 *)(addr+0) = d0;
				*(u8 *)(addr+1) = d1;
@@ -122,14 +111,12 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
				fault |= __put_user(d0, (u8 *)(addr+0));
				fault |= __put_user(d1, (u8 *)(addr+1));
			}
			ma_half++;
			break;
		case INST_LDH:
			fault |= __get_user(d0, (u8 *)(addr+0));
			fault |= __get_user(d1, (u8 *)(addr+1));
			val = (short)((d1 << 8) | d0);
			put_reg_val(fp, b, val);
			ma_half++;
			break;
		case INST_STW:
			val = get_reg_val(fp, b);
@@ -148,7 +135,6 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
				fault |= __put_user(d2, (u8 *)(addr+2));
				fault |= __put_user(d3, (u8 *)(addr+3));
			}
			ma_word++;
			break;
		case INST_LDW:
			fault |= __get_user(d0, (u8 *)(addr+0));
@@ -157,7 +143,6 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
			fault |= __get_user(d3, (u8 *)(addr+3));
			val = (d3 << 24) | (d2 << 16) | (d1 << 8) | d0;
			put_reg_val(fp, b, val);
			ma_word++;
			break;
		}
	}
@@ -186,7 +171,6 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
	 *  note exception and skip bad instruction (return)
	 */
	if (in_kernel) {
		ma_kern++;
		fp->ea += 4;

		if (ma_usermode & KM_WARN) {
@@ -200,8 +184,6 @@ asmlinkage void handle_unaligned_c(struct pt_regs *fp, int cause)
		return;
	}

	ma_user++;

	/*
	 * user mode -
	 *  possibly warn,