From caf214935aa596e18eff992a907785aecc8f5d2d Mon Sep 17 00:00:00 2001
From: oharboe <oharboe@b42882b7-edfa-0310-969c-e2dbd0fdcd60>
Date: Fri, 24 Apr 2009 11:05:21 +0000
Subject: [PATCH] Zach Welch <zw@superlucidity.net> use memcpy

git-svn-id: svn://svn.berlios.de/openocd/trunk@1521 b42882b7-edfa-0310-969c-e2dbd0fdcd60
---
 src/jtag/jlink.c | 20 +++-----------------
 1 file changed, 3 insertions(+), 17 deletions(-)

diff --git a/src/jtag/jlink.c b/src/jtag/jlink.c
index a229cec58..8626b18cd 100644
--- a/src/jtag/jlink.c
+++ b/src/jtag/jlink.c
@@ -665,8 +665,6 @@ static void jlink_tap_append_scan(int length, u8 *buffer, scan_command_t *comman
 static int jlink_tap_execute(void)
 {
 	int byte_length;
-	int tms_offset;
-	int tdi_offset;
 	int i;
 	int result;
 
@@ -680,21 +678,10 @@ static int jlink_tap_execute(void)
 	usb_out_buffer[1] = 0;
 	usb_out_buffer[2] = (tap_length >> 0) & 0xff;
 	usb_out_buffer[3] = (tap_length >> 8) & 0xff;
-
-	tms_offset = 4;
-	for (i = 0; i < byte_length; i++)
-	{
-		usb_out_buffer[tms_offset + i] = tms_buffer[i];
-	}
-
-	tdi_offset = tms_offset + byte_length;
-	for (i = 0; i < byte_length; i++)
-	{
-		usb_out_buffer[tdi_offset + i] = tdi_buffer[i];
-	}
+	memcpy(usb_out_buffer + 4, tms_buffer, byte_length);
+	memcpy(usb_out_buffer + 4 + byte_length, tdi_buffer, byte_length);
 
 	result = jlink_usb_message(jlink_jtag_handle, 4 + 2 * byte_length, byte_length);
-
 	if (result != byte_length)
 	{
 		LOG_ERROR("jlink_tap_execute, wrong result %d (expected %d)",
@@ -702,8 +689,7 @@ static int jlink_tap_execute(void)
 		return ERROR_JTAG_QUEUE_FAILED;
 	}
 
-	for (i = 0; i < byte_length; i++)
-		tdo_buffer[i] = usb_in_buffer[i];
+	memcpy(tdo_buffer, usb_in_buffer, byte_length);
 
 	for (i = 0; i < pending_scan_results_length; i++)
 	{
-- 
GitLab