From 731d2d0cb6a63fd7fc1fa2f43cc92e095508f0ff Mon Sep 17 00:00:00 2001
From: zwelch <zwelch@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Date: Tue, 9 Jun 2009 01:16:19 +0000
Subject: Reduce scope or eliminate temporary variables in jtag_add_statemove:
 - Change types of tms_bits and tms_count to unsigned, eliminates a cast. -
 Use moves[] only if needed; a single move can use goal_state directly. -
 Declare loop induction variable inside its control statement. - Remove retval
 in favor of direct returns.

git-svn-id: svn://svn.berlios.de/openocd/trunk@2137 b42882b7-edfa-0310-969c-e2dbd0fdcd60
---
 src/jtag/jtag.c | 26 ++++++++------------------
 1 file changed, 8 insertions(+), 18 deletions(-)

(limited to 'src')

diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c
index 0af50803..77f32257 100644
--- a/src/jtag/jtag.c
+++ b/src/jtag/jtag.c
@@ -2597,13 +2597,7 @@ static int handle_tms_sequence_command(struct command_context_s *cmd_ctx, char *
  */
 int jtag_add_statemove(tap_state_t goal_state)
 {
-	int retval = ERROR_OK;
-
-	tap_state_t moves[8];
 	tap_state_t cur_state = cmd_queue_cur_state;
-	int i;
-	int tms_bits;
-	int	tms_count;
 
 	LOG_DEBUG( "cur_state=%s goal_state=%s",
 		tap_state_name(cur_state),
@@ -2618,12 +2612,12 @@ int jtag_add_statemove(tap_state_t goal_state)
 	}
 	else if( tap_is_state_stable(cur_state) && tap_is_state_stable(goal_state) )
 	{
-		tms_bits  = tap_get_tms_path(cur_state, goal_state);
-		tms_count = tap_get_tms_path_len(cur_state, goal_state);
+		unsigned tms_bits  = tap_get_tms_path(cur_state, goal_state);
+		unsigned tms_count = tap_get_tms_path_len(cur_state, goal_state);
+		tap_state_t moves[8];
+		assert(tms_count < DIM(moves));
 
-		assert( (unsigned) tms_count < DIM(moves) );
-
-		for (i=0;   i<tms_count;   i++, tms_bits>>=1)
+		for (unsigned i = 0; i < tms_count; i++, tms_bits >>= 1)
 		{
 			bool bit = tms_bits & 1;
 
@@ -2636,17 +2630,13 @@ int jtag_add_statemove(tap_state_t goal_state)
 	else if( tap_state_transition(cur_state, true)  == goal_state
 		||   tap_state_transition(cur_state, false) == goal_state )
 	{
-		/* move a single state */
-		moves[0] = goal_state;
-		jtag_add_pathmove( 1, moves );
+		jtag_add_pathmove(1, &goal_state);
 	}
 
 	else
-	{
-		retval = ERROR_FAIL;
-	}
+		return ERROR_FAIL;
 
-	return retval;
+	return ERROR_OK;
 }
 
 void jtag_set_nsrst_delay(unsigned delay)
-- 
cgit v1.2.3