From ca9fa87543df616b5bc2955090f6a8260da3efc1 Mon Sep 17 00:00:00 2001 From: Simon Wilkinson Date: Sat, 7 Apr 2012 12:44:17 +0100 Subject: [PATCH] tools: Use native 64 bit integer Modify the tools directory to use a native 64 bit integer type, rather than rolling its own. Change-Id: Ib2545b43aa3bf34e8917a4ae7ae4ee3f4be6d1c0 Reviewed-on: http://gerrit.openafs.org/7118 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- src/tools/Makefile.in | 1 + src/tools/backuphdr.c | 2 +- src/tools/int64.c | 26 +++++++++++++------------- src/tools/intNN.h | 4 ++-- src/tools/stagehdr.c | 4 ++-- 5 files changed, 19 insertions(+), 18 deletions(-) diff --git a/src/tools/Makefile.in b/src/tools/Makefile.in index 3f3e620ee..77a1f72c8 100644 --- a/src/tools/Makefile.in +++ b/src/tools/Makefile.in @@ -7,6 +7,7 @@ SHELL = /bin/sh INCDIRS=-I${TOP_OBJDIR}/src/config -I${TOP_INCDIR}/afs -I${TOP_INCDIR} INCLIBS=-L${SRCDIR}/lib/afs -L${TOP_LIBDIR} +MODULE_CFLAGS=-DNATIVE_UINT64=afs_uint64 LIBS=\ libdumpscan.a \ diff --git a/src/tools/backuphdr.c b/src/tools/backuphdr.c index 0732d4f65..1a4a0e50b 100644 --- a/src/tools/backuphdr.c +++ b/src/tools/backuphdr.c @@ -93,7 +93,7 @@ PrintBackupHdr(backup_system_header * hdr) printf(" => %s", ctime(&to)); printf(" Dump Time: %d == %s", hdr->dump_date, ctime(&dd)); printf(" Dump Flags: 0x%08x\n", hdr->flags); -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 printf(" Length: %llu\n", hdr->dumplen); #else printf(" Length: %u,%u\n", hdr->dumplen.hi, hdr->dumplen.lo); diff --git a/src/tools/int64.c b/src/tools/int64.c index a6897a2b5..72d3803d9 100644 --- a/src/tools/int64.c +++ b/src/tools/int64.c @@ -37,7 +37,7 @@ hexify_int64(dt_uint64 * X, char *buf) { static char mybuf[17]; -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 char c, *p; dt_uint64 x = *X; @@ -64,7 +64,7 @@ hexify_int64(dt_uint64 * X, char *buf) } -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 char * decimate_int64(dt_uint64 * X, char *buf) { @@ -216,13 +216,13 @@ decimate_int64(dt_uint64 * X, char *buf) return (*p) ? p : p - 1; } -#endif /* NATIVE_INT64 */ +#endif /* NATIVE_UINT64 */ void shift_int64(dt_uint64 * X, int bits) { -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 if (bits < 0) *X >>= (-bits); else @@ -257,20 +257,20 @@ shift_int64(dt_uint64 * X, int bits) /** the rest of this is for testing the int64 suite **/ -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 #define xize(x) #x #define stringize(x) xize(x) -#define INT64_NAME stringize(unsigned NATIVE_INT64) +#define INT64_NAME stringize(unsigned NATIVE_UINT64) -#endif /* NATIVE_INT64 */ +#endif /* NATIVE_UINT64 */ void verify_int64_size() { -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 signed char testchar = -1; unsigned int testint = (unsigned char)testchar; @@ -283,19 +283,19 @@ verify_int64_size() } printf("Looks like a char is 8 bits...\n"); - if (sizeof(unsigned NATIVE_INT64) != 8) { + if (sizeof(unsigned NATIVE_UINT64) != 8) { printf("sizeof(%s) = %d; should be 8\n", INT64_NAME, - sizeof(unsigned NATIVE_INT64)); + sizeof(unsigned NATIVE_UINT64)); fprintf(stderr, "Hey! You said a %s was 64-bits wide!\n", INT64_NAME); exit(-1); } printf("Yippee! We have a native 64-bit type (%s)\n\n", INT64_NAME); -#else /* !NATIVE_INT64 */ +#else /* !NATIVE_UINT64 */ printf("Using fake 64-bit integers...\n\n"); -#endif /* NATIVE_INT64 */ +#endif /* NATIVE_UINT64 */ } @@ -311,7 +311,7 @@ test_int64_constructs(void) printf("Setting x := %s\n", INT64_TEST_STR); mk64(x, INT64_TEST_HI, INT64_TEST_LO); -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 pass = (x == INT64_TEST_CONST); hexify_int64(&x, buf); printf("NATIVE mk64: x = 0x%16s %s\n", buf, diff --git a/src/tools/intNN.h b/src/tools/intNN.h index 6c264a0f5..b344a3552 100644 --- a/src/tools/intNN.h +++ b/src/tools/intNN.h @@ -48,8 +48,8 @@ typedef unsigned long afs_uint32; #define INT64_TEST_LO 0xfedcba98 -#ifdef NATIVE_INT64 -typedef unsigned NATIVE_INT64 dt_uint64; +#ifdef NATIVE_UINT64 +typedef NATIVE_UINT64 dt_uint64; /* construct/extract/assign */ #define mk64(X,H,L) ((X) = ( ((dt_uint64)(H) << 32) \ diff --git a/src/tools/stagehdr.c b/src/tools/stagehdr.c index 7b494ab12..4ef3c4b76 100644 --- a/src/tools/stagehdr.c +++ b/src/tools/stagehdr.c @@ -99,7 +99,7 @@ ParseStageHdr(XFILE * X, unsigned char *tag, backup_system_header * hdr) hdr->dump_date = ntohl(bckhdr->c_time); hdr->filenum = ntohl(bckhdr->c_filenum); hdr->volid = ntohl(bckhdr->c_id); -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 hdr->dumplen = ntohl(bckhdr->c_length); #else hdr->dumplen.hi = 0; @@ -150,7 +150,7 @@ DumpStageHdr(XFILE * OX, backup_system_header * hdr) bckhdr->c_filenum = htonl(hdr->filenum); bckhdr->c_time = htonl(hdr->dump_date); bckhdr->c_id = htonl(hdr->volid); -#ifdef NATIVE_INT64 +#ifdef NATIVE_UINT64 bckhdr->c_length = htonl((afs_uint32) hdr->dumplen); #else bckhdr->c_length = htonl(hdr->dumplen.lo); -- 2.39.5