[PATCH] libosmocore[master]: coding test: move bit dump into functions

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

Max gerrit-no-reply at lists.osmocom.org
Tue Nov 28 16:49:38 UTC 2017


Review at  https://gerrit.osmocom.org/5071

coding test: move bit dump into functions

Change-Id: I65c75e56831420d3daf386ea280c13ae9cb64d1b
---
M tests/coding/coding_test.c
1 file changed, 48 insertions(+), 123 deletions(-)


  git pull ssh://gerrit.osmocom.org:29418/libosmocore refs/changes/71/5071/1

diff --git a/tests/coding/coding_test.c b/tests/coding/coding_test.c
index 212c9fa..51bdf0b 100644
--- a/tests/coding/coding_test.c
+++ b/tests/coding/coding_test.c
@@ -37,6 +37,46 @@
 		abort();			     \
 	}
 
+#define DUMP_U_AT(b, x, u) do {						\
+		printf("%s %02x  %02x  ", osmo_ubit_dump(b + x, 57), b[57 + x], b[58 + x]); \
+		printf("%s\n",            osmo_ubit_dump(b + 59 + x, 57)); \
+		if (u <= x)					\
+			return;						\
+	} while(0)
+
+#define DUMP_S_AT(b, x, u) do {						\
+		printf("%s %02x  %02x  ", osmo_hexdump(b + x, 57), b[57 + x], b[58 + x]); \
+		printf("%s\n",            osmo_hexdump(b + 59 + x, 57)); \
+		if (u <= x)					\
+			return;						\
+	} while(0)
+
+inline void dump_ubits(ubit_t *bursts_u, unsigned until)
+{
+	printf("U-Bits:\n");
+	DUMP_U_AT(bursts_u, 0, until);
+	DUMP_U_AT(bursts_u, 116, until);
+	DUMP_U_AT(bursts_u, 232, until);
+	DUMP_U_AT(bursts_u, 348, until);
+	DUMP_U_AT(bursts_u, 464, until);
+	DUMP_U_AT(bursts_u, 580, until);
+	DUMP_U_AT(bursts_u, 696, until);
+	DUMP_U_AT(bursts_u, 812, until);
+}
+
+inline void dump_sbits(uint8_t *bursts_s, unsigned until)
+{
+	printf("S-Bits:\n");
+	DUMP_S_AT(bursts_s, 0, until);
+	DUMP_S_AT(bursts_s, 116, until);
+	DUMP_S_AT(bursts_s, 232, until);
+	DUMP_S_AT(bursts_s, 348, until);
+	DUMP_S_AT(bursts_s, 464, until);
+	DUMP_S_AT(bursts_s, 580, until);
+	DUMP_S_AT(bursts_s, 696, until);
+	DUMP_S_AT(bursts_s, 812, until);
+}
+
 static void test_xcch(uint8_t *l2)
 {
 	uint8_t result[23];
@@ -50,30 +90,8 @@
 
 	/* Prepare soft-bits */
 	osmo_ubit2sbit(bursts_s, bursts_u, 116 * 4);
-
-	printf("U-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u, 57), bursts_u[57], bursts_u[58]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 116, 57), bursts_u[57 + 116], bursts_u[58 + 116]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 232, 57), bursts_u[57 + 232], bursts_u[58 + 232]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 348, 57), bursts_u[57 + 348], bursts_u[58 + 348]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 348, 57));
-
-	printf("S-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s, 57),
-		(uint8_t)bursts_s[57], (uint8_t)bursts_s[58]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 116, 57),
-		(uint8_t)bursts_s[57 + 116], (uint8_t)bursts_s[58 + 116]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 232, 57),
-		(uint8_t)bursts_s[57 + 232], (uint8_t)bursts_s[58 + 232]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 348, 57),
-		(uint8_t)bursts_s[57 + 348], (uint8_t)bursts_s[58 + 348]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 348, 57));
+	dump_ubits(bursts_u, 348);
+	dump_sbits((uint8_t *)bursts_s, 348);
 
 	/* Destroy some bits */
 	memset(bursts_s, 0, 30);
@@ -173,49 +191,8 @@
 	/* Prepare soft-bits */
 	osmo_ubit2sbit(bursts_s, bursts_u, 116 * 8);
 
-	printf("U-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u, 57), bursts_u[57], bursts_u[58]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 116, 57), bursts_u[57 + 116], bursts_u[58 + 116]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 232, 57), bursts_u[57 + 232], bursts_u[58 + 232]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 348, 57), bursts_u[57 + 348], bursts_u[58 + 348]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 348, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 464, 57), bursts_u[57 + 464], bursts_u[58 + 464]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 464, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 580, 57), bursts_u[57 + 580], bursts_u[58 + 580]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 580, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 696, 57), bursts_u[57 + 696], bursts_u[58 + 696]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 696, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 812, 57), bursts_u[57 + 812], bursts_u[58 + 812]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 812, 57));
-
-	printf("S-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s, 57),
-		(uint8_t)bursts_s[57], (uint8_t)bursts_s[58]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 116, 57),
-		(uint8_t)bursts_s[57 + 116], (uint8_t)bursts_s[58 + 116]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 232, 57),
-		(uint8_t)bursts_s[57 + 232], (uint8_t)bursts_s[58 + 232]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 348, 57),
-		(uint8_t)bursts_s[57 + 348], (uint8_t)bursts_s[58 + 348]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 348, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 464, 57),
-		(uint8_t)bursts_s[57 + 464], (uint8_t)bursts_s[58 + 464]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 464, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 580, 57),
-		(uint8_t)bursts_s[57 + 580], (uint8_t)bursts_s[58 + 580]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 580, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 696, 57),
-		(uint8_t)bursts_s[57 + 696], (uint8_t)bursts_s[58 + 696]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 696, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 812, 57),
-		(uint8_t)bursts_s[57 + 812], (uint8_t)bursts_s[58 + 812]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 812, 57));
+	dump_ubits(bursts_u, 812);
+	dump_sbits((uint8_t *)bursts_s, 812);
 
 	/* Destroy some bits */
 	memset(bursts_s + 6, 0, 20);
@@ -251,39 +228,8 @@
 	/* Prepare soft-bits */
 	osmo_ubit2sbit(bursts_s, bursts_u, 116 * 6);
 
-	printf("U-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u, 57), bursts_u[57], bursts_u[58]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 116, 57), bursts_u[57 + 116], bursts_u[58 + 116]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 232, 57), bursts_u[57 + 232], bursts_u[58 + 232]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 348, 57), bursts_u[57 + 348], bursts_u[58 + 348]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 348, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 464, 57), bursts_u[57 + 464], bursts_u[58 + 464]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 464, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 580, 57), bursts_u[57 + 580], bursts_u[58 + 580]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 580, 57));
-
-	printf("S-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s, 57),
-		(uint8_t)bursts_s[57], (uint8_t)bursts_s[58]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 116, 57),
-		(uint8_t)bursts_s[57 + 116], (uint8_t)bursts_s[58 + 116]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 232, 57),
-		(uint8_t)bursts_s[57 + 232], (uint8_t)bursts_s[58 + 232]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 348, 57),
-		(uint8_t)bursts_s[57 + 348], (uint8_t)bursts_s[58 + 348]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 348, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 464, 57),
-		(uint8_t)bursts_s[57 + 464], (uint8_t)bursts_s[58 + 464]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 464, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 580, 57),
-		(uint8_t)bursts_s[57 + 580], (uint8_t)bursts_s[58 + 580]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 580, 57));
+	dump_ubits(bursts_u, 580);
+	dump_sbits((uint8_t *)bursts_s, 580);
 
 	/* Destroy some bits */
 	memset(bursts_s + 6, 0, 20);
@@ -329,29 +275,8 @@
 	/* Prepare soft-bits */
 	osmo_ubit2sbit(bursts_s, bursts_u, 116 * 4);
 
-	printf("U-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u, 57), bursts_u[57], bursts_u[58]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 116, 57), bursts_u[57 + 116], bursts_u[58 + 116]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 232, 57), bursts_u[57 + 232], bursts_u[58 + 232]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_ubit_dump(bursts_u + 348, 57), bursts_u[57 + 348], bursts_u[58 + 348]);
-	printf("%s\n",            osmo_ubit_dump(bursts_u + 59 + 348, 57));
-
-	printf("S-Bits:\n");
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s, 57),
-		(uint8_t)bursts_s[57], (uint8_t)bursts_s[58]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 116, 57),
-		(uint8_t)bursts_s[57 + 116], (uint8_t)bursts_s[58 + 116]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 116, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 232, 57),
-		(uint8_t)bursts_s[57 + 232], (uint8_t)bursts_s[58 + 232]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 232, 57));
-	printf("%s %02x  %02x  ", osmo_hexdump((uint8_t *)bursts_s + 348, 57),
-		(uint8_t)bursts_s[57 + 348], (uint8_t)bursts_s[58 + 348]);
-	printf("%s\n", osmo_hexdump((uint8_t *)bursts_s + 59 + 348, 57));
+	dump_ubits(bursts_u, 348);
+	dump_sbits((uint8_t *)bursts_s, 348);
 
 	/* Decode */
 	rc = gsm0503_pdtch_decode(result, bursts_s, NULL,

-- 
To view, visit https://gerrit.osmocom.org/5071
To unsubscribe, visit https://gerrit.osmocom.org/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I65c75e56831420d3daf386ea280c13ae9cb64d1b
Gerrit-PatchSet: 1
Gerrit-Project: libosmocore
Gerrit-Branch: master
Gerrit-Owner: Max <msuraev at sysmocom.de>



More information about the gerrit-log mailing list