summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tools/lib/h5diff.h11
-rw-r--r--tools/lib/h5diff_array.c433
-rw-r--r--tools/lib/h5diff_dset.c60
-rw-r--r--tools/lib/h5diff_util.c64
-rw-r--r--tools/testfiles/h5diff_57.txt9
5 files changed, 261 insertions, 316 deletions
diff --git a/tools/lib/h5diff.h b/tools/lib/h5diff.h
index a4cf65e..ffe7101 100644
--- a/tools/lib/h5diff.h
+++ b/tools/lib/h5diff.h
@@ -165,16 +165,7 @@ const char* get_type(int type);
const char* get_class(H5T_class_t tclass);
const char* get_sign(H5T_sign_t sign);
void print_dims( int r, hsize_t *d );
-void print_pos( int *ph,
- int per,
- hsize_t curr_pos,
- hsize_t *acc,
- hsize_t *pos,
- int rank,
- const char *obj1,
- const char *obj2 );
-
-int print_objname(diff_opt_t *options, hsize_t nfound);
+int print_objname(diff_opt_t *options, hsize_t nfound);
#if defined (H5DIFF_DEBUG)
diff --git a/tools/lib/h5diff_array.c b/tools/lib/h5diff_array.c
index 0330634..677072c 100644
--- a/tools/lib/h5diff_array.c
+++ b/tools/lib/h5diff_array.c
@@ -1,16 +1,16 @@
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
-* Copyright by the Board of Trustees of the University of Illinois. *
-* All rights reserved. *
-* *
-* This file is part of HDF5. The full HDF5 copyright notice, including *
-* terms governing use, modification, and redistribution, is contained in *
-* the files COPYING and Copyright.html. COPYING can be found at the root *
-* of the source code distribution tree; Copyright.html can be found at the *
-* root level of an installed copy of the electronic HDF5 document set and *
-* is linked from the top-level documents page. It can also be found at *
-* http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
-* access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
-* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdf.ncsa.uiuc.edu/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from hdfhelp@ncsa.uiuc.edu. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#include <math.h>
#include "h5diff.h"
@@ -23,38 +23,32 @@
*-------------------------------------------------------------------------
*/
-#define FFORMAT "%-15f %-15f %-15f\n"
-#define IFORMAT "%-15d %-15d %-15d\n"
-#define CFORMAT "%-16c %-17c\n"
-#define SFORMAT "%-16s %-17s\n"
-#define UIFORMAT "%-15u %-15u %-15u\n"
-#define LIFORMAT "%-15ld %-15ld %-15ld\n"
-#define ULIFORMAT "%-15lu %-15lu %-15lu\n"
+#define F_FORMAT "%-15f %-15f %-15f\n"
+#define I_FORMAT "%-15d %-15d %-15d\n"
+#define C_FORMAT "%-16c %-17c\n"
+#define S_FORMAT "%-16s %-17s\n"
+#define UI_FORMAT "%-15u %-15u %-15u\n"
+#define LI_FORMAT "%-15ld %-15ld %-15ld\n"
+#define ULI_FORMAT "%-15lu %-15lu %-15lu\n"
+#define LLI_FORMAT "%-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d\n"
+#define ULLI_FORMAT "%-15"H5_PRINTF_LL_WIDTH"u %-15"H5_PRINTF_LL_WIDTH"u %-15"H5_PRINTF_LL_WIDTH"u\n"
/* with -p option */
-#define FPFORMAT "%-15.10g %-15.10g %-15.10g %-14.10g\n"
-/*#define IPFORMAT "%-15d %-15d %-15d %-14f\n"*/
+#define F_FORMAT_P "%-15.10g %-15.10g %-15.10g %-14.10g\n"
+#define I_FORMAT_P "%-15d %-15d %-15d %-14f\n"
+/*#define I_FORMAT_P "%-15d %-15d %-15d %-14d\n"*/
+#define UI_FORMAT_P "%-15u %-15u %-15u %-14u\n"
+#define LI_FORMAT_P "%-15ld %-15ld %-15ld %-14ld\n"
+#define ULI_FORMAT_P "%-15lu %-15lu %-15lu %-14lu\n"
+#define LLI_FORMAT_P "%-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d\n"
+#define ULLI_FORMAT_P "%-15"H5_PRINTF_LL_WIDTH"u %-15"H5_PRINTF_LL_WIDTH"u %-15"H5_PRINTF_LL_WIDTH"u\n"
+#define SPACES " "
-#define IPFORMAT "%-15d %-15d %-15d %-14d\n"
-#define UIPFORMAT "%-15u %-15u %-15u %-14u\n"
-#define LPIFORMAT "%-15ld %-15ld %-15ld %-14ld\n"
-#define ULPIFORMAT "%-15lu %-15lu %-15lu %-14lu\n"
-#define SPACES " "
-
-
-#define LLI_FORMAT "%-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d\n"
-#define LLI_FORMAT_P "%-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d %-15"H5_PRINTF_LL_WIDTH"d\n"
-
-
-
-
-#define PER(A,B) { double per; \
- per=-1; \
- if (A!=0) \
- per = fabs(1-( (double)B / (double)A )); \
- return per; \
- }
+#define PER(A,B) { per = -1; \
+ if (A!=0) \
+ per = (float)fabs(1-( (float)B / (float)A )); \
+ }
/* local functions */
@@ -69,11 +63,87 @@ static hbool_t is_zero(const void *_mem, size_t size);
* and do not print in quiet mode
*-------------------------------------------------------------------------
*/
-static int print_data(diff_opt_t *options)
+static
+int print_data(diff_opt_t *options)
{
return ( (options->m_report || options->m_verbose) && !options->m_quiet)?1:0;
}
+/*-------------------------------------------------------------------------
+ * Function: print_pos
+ *
+ * Purpose: print in matrix notation, converting from an array index position
+ *
+ *-------------------------------------------------------------------------
+ */
+static
+void print_pos( int *ph, /* print header */
+ int per, /* print percentage */
+ hsize_t curr_pos,
+ hsize_t *acc,
+ hsize_t *pos,
+ int rank,
+ const char *obj1,
+ const char *obj2 )
+{
+ int i;
+
+ /* print header */
+ if ( *ph==1 )
+ {
+ *ph=0;
+ if (per)
+ {
+ parallel_print("%-15s %-15s %-15s %-15s %-15s\n",
+ "position",
+ (obj1!=NULL) ? obj1 : " ",
+ (obj2!=NULL) ? obj2 : " ",
+ "difference",
+ "relative");
+ parallel_print("------------------------------------------------------------------------\n");
+ }
+ else
+ {
+ parallel_print("%-15s %-15s %-15s %-20s\n",
+ "position",
+ (obj1!=NULL) ? obj1 : " ",
+ (obj2!=NULL) ? obj2 : " ",
+ "difference");
+ parallel_print("------------------------------------------------------------\n");
+ }
+ }
+
+ for ( i = 0; i < rank; i++)
+ {
+ pos[i] = curr_pos/acc[i];
+ curr_pos -= acc[i]*pos[i];
+ }
+ assert( curr_pos == 0 );
+
+ parallel_print("[ " );
+ for ( i = 0; i < rank; i++)
+ {
+ parallel_print("%"H5_PRINTF_LL_WIDTH"u ", (unsigned long_long)pos[i]);
+ }
+ parallel_print("]" );
+}
+
+
+static
+void print_schar( int *ph, diff_opt_t *options, hsize_t i, hsize_t *acc, hsize_t *pos,
+ int rank, const char *obj1, const char *obj2,
+ char temp1_char, char temp2_char)
+{
+ if ( print_data(options) )
+ {
+ print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
+ parallel_print(SPACES);
+ parallel_print(I_FORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
+ }
+
+}
+
+
/*-------------------------------------------------------------------------
* Function: diff_array
@@ -271,10 +341,6 @@ hsize_t diff_datum(void *_mem1,
hid_t container2_id, /*where the reference came from*/
int *ph) /*print header */
{
- static char fmt_llong[255];
- static char fmt_ullong[255];
- static char fmt_llongp[255];
- static char fmt_ullongp[255];
hsize_t dims[H5S_MAX_RANK];
unsigned char *mem1 = (unsigned char*)_mem1;
unsigned char *mem2 = (unsigned char*)_mem2;
@@ -297,21 +363,7 @@ hsize_t diff_datum(void *_mem1,
H5G_stat_t sb2;
hsize_t nfound=0; /* differences found */
int ret=0; /* check return error */
- double per;
-
- if (!fmt_llong[0]) {
-
- /* build default formats for long long types */
- sprintf(fmt_llong, "%%%sd %%%sd %%%sd\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- sprintf(fmt_ullong, "%%%su %%%su %%%su\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- sprintf(fmt_llongp, "%%%sd %%%sd %%%sd %%%sd\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- sprintf(fmt_ullongp, "%%%su %%%su %%%su %%%su\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
-
- }
+ float per;
type_size = H5Tget_size( m_type );
@@ -471,7 +523,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(SFORMAT,enum_name1,enum_name2);
+ parallel_print(S_FORMAT,enum_name1,enum_name2);
}
}
else
@@ -701,7 +753,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
+ parallel_print(I_FORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
}
nfound++;
}
@@ -715,7 +767,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char),abs(1-temp2_char/temp1_char));
+ parallel_print(I_FORMAT_P,temp1_char,temp2_char,abs(temp1_char-temp2_char),abs(1-temp2_char/temp1_char));
}
nfound++;
}
@@ -730,7 +782,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char), abs(1-temp2_char/temp1_char));
+ parallel_print(I_FORMAT_P,temp1_char,temp2_char,abs(temp1_char-temp2_char), abs(1-temp2_char/temp1_char));
}
nfound++;
}
@@ -741,7 +793,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
+ parallel_print(I_FORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
}
nfound++;
}
@@ -769,7 +821,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
}
@@ -783,7 +835,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
}
@@ -798,7 +850,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
}
@@ -809,7 +861,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
@@ -840,7 +892,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
+ parallel_print(I_FORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
}
nfound++;
}
@@ -854,7 +906,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short), abs(1-temp2_short/temp1_short));
+ parallel_print(I_FORMAT_P,temp1_short,temp2_short,abs(temp1_short-temp2_short), abs(1-temp2_short/temp1_short));
}
nfound++;
}
@@ -869,7 +921,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short), abs(1-temp2_short/temp1_short));
+ parallel_print(I_FORMAT_P,temp1_short,temp2_short,abs(temp1_short-temp2_short), abs(1-temp2_short/temp1_short));
}
nfound++;
}
@@ -880,7 +932,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
+ parallel_print(I_FORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
}
nfound++;
}
@@ -911,7 +963,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
+ parallel_print(I_FORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
}
nfound++;
}
@@ -927,7 +979,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort), abs(1-temp2_ushort/temp1_ushort));
+ parallel_print(I_FORMAT_P,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort), abs(1-temp2_ushort/temp1_ushort));
}
nfound++;
}
@@ -944,7 +996,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort), abs(1-temp2_ushort/temp1_ushort));
+ parallel_print(I_FORMAT_P,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort), abs(1-temp2_ushort/temp1_ushort));
}
nfound++;
}
@@ -956,7 +1008,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
+ parallel_print(I_FORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
}
nfound++;
}
@@ -988,7 +1040,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
+ parallel_print(I_FORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
}
nfound++;
}
@@ -997,10 +1049,7 @@ hsize_t diff_datum(void *_mem1,
else if (!options->d && options->p)
{
- per=-1;
- if (temp1_int!=0)
- per = fabs(1-( (double)temp2_int / (double)temp1_int ));
-
+ PER(temp1_int,temp2_int);
if ( per > options->percent )
{
if ( print_data(options) )
@@ -1008,7 +1057,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
+ parallel_print(I_FORMAT_P,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
}
nfound++;
}
@@ -1016,10 +1065,7 @@ hsize_t diff_datum(void *_mem1,
/* -d and -p */
else if ( options->d && options->p)
{
- per=-1;
- if (temp1_int!=0)
- per = fabs(1-( (double)temp2_int / (double)temp1_int ));
-
+ PER(temp1_int,temp2_int);
if ( per > options->percent && abs(temp1_int-temp2_int) > options->delta )
{
@@ -1028,7 +1074,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int), abs(1-temp2_int/temp1_int));
+ parallel_print(I_FORMAT_P,temp1_int,temp2_int,abs(temp1_int-temp2_int), abs(1-temp2_int/temp1_int));
}
nfound++;
}
@@ -1040,7 +1086,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
+ parallel_print(I_FORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
}
nfound++;
}
@@ -1072,7 +1118,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(UIFORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)));
+ parallel_print(UI_FORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)));
}
nfound++;
}
@@ -1088,7 +1134,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)), abs((int)(1-temp2_uint/temp1_uint)));
+ parallel_print(I_FORMAT_P,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)), abs((int)(1-temp2_uint/temp1_uint)));
}
nfound++;
}
@@ -1105,7 +1151,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)), abs((int)(1-temp2_uint/temp1_uint)));
+ parallel_print(I_FORMAT_P,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)), abs((int)(1-temp2_uint/temp1_uint)));
}
nfound++;
}
@@ -1118,13 +1164,10 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(UIFORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)));
+ parallel_print(UI_FORMAT,temp1_uint,temp2_uint,abs((int)(temp1_uint-temp2_uint)));
}
nfound++;
}
-
-
-
} /*H5T_NATIVE_UINT*/
@@ -1151,7 +1194,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
+ parallel_print(LI_FORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
}
nfound++;
}
@@ -1166,7 +1209,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long), labs(1-temp2_long/temp1_long));
+ parallel_print(LI_FORMAT_P,temp1_long,temp2_long,labs(temp1_long-temp2_long), labs(1-temp2_long/temp1_long));
}
nfound++;
}
@@ -1182,7 +1225,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long), labs(1-temp2_long/temp1_long));
+ parallel_print(LI_FORMAT_P,temp1_long,temp2_long,labs(temp1_long-temp2_long), labs(1-temp2_long/temp1_long));
}
nfound++;
}
@@ -1194,7 +1237,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
+ parallel_print(LI_FORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
}
nfound++;
}
@@ -1226,7 +1269,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(ULIFORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)));
+ parallel_print(ULI_FORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)));
}
nfound++;
}
@@ -1241,7 +1284,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(ULPIFORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)), labs((long)(1-temp2_ulong/temp1_ulong)));
+ parallel_print(ULI_FORMAT_P,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)), labs((long)(1-temp2_ulong/temp1_ulong)));
}
nfound++;
}
@@ -1257,7 +1300,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(ULPIFORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)), labs((long)(1-temp2_ulong/temp1_ulong)));
+ parallel_print(ULI_FORMAT_P,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)), labs((long)(1-temp2_ulong/temp1_ulong)));
}
nfound++;
}
@@ -1269,7 +1312,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(ULIFORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)));
+ parallel_print(ULI_FORMAT,temp1_ulong,temp2_ulong,labs((long)(temp1_ulong-temp2_ulong)));
}
nfound++;
}
@@ -1300,7 +1343,8 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_llong,temp1_llong,temp2_llong,(long_long)labs((long)(temp1_llong-temp2_llong)));
+ parallel_print(LLI_FORMAT,temp1_llong,temp2_llong,
+ (long_long)labs((long)(temp1_llong-temp2_llong)));
}
nfound++;
}
@@ -1315,7 +1359,9 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_llongp,temp1_llong,temp2_llong,(long_long)labs((long)(temp1_llong-temp2_llong)), (long_long)labs((long)(1-temp2_llong/temp1_llong)));
+ parallel_print(LLI_FORMAT_P,temp1_llong,temp2_llong,
+ (long_long)labs((long)(temp1_llong-temp2_llong)),
+ (long_long)labs((long)(1-temp2_llong/temp1_llong)));
}
nfound++;
}
@@ -1331,7 +1377,9 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_llongp,temp1_llong,temp2_llong,(long_long)labs((long)(temp1_llong-temp2_llong)), (long_long)labs((long)(1-temp2_llong/temp1_llong)));
+ parallel_print(LLI_FORMAT_P,temp1_llong,temp2_llong,
+ (long_long)labs((long)(temp1_llong-temp2_llong)),
+ (long_long)labs((long)(1-temp2_llong/temp1_llong)));
}
nfound++;
}
@@ -1344,7 +1392,8 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_llong,temp1_llong,temp2_llong,(long_long)labs((long)(temp1_llong-temp2_llong)));
+ parallel_print(LLI_FORMAT,temp1_llong,temp2_llong,
+ (long_long)labs((long)(temp1_llong-temp2_llong)));
}
nfound++;
}
@@ -1375,7 +1424,8 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullong,temp1_ullong,temp2_ullong, (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
+ parallel_print(ULLI_FORMAT,temp1_ullong,temp2_ullong,
+ (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
}
nfound++;
}
@@ -1390,7 +1440,9 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullongp,temp1_ullong,temp2_ullong, (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)), (unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
+ parallel_print(ULLI_FORMAT_P,temp1_ullong,temp2_ullong,
+ (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)),
+ (unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
}
nfound++;
}
@@ -1407,7 +1459,9 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullongp,temp1_ullong,temp2_ullong, (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)), (unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
+ parallel_print(ULLI_FORMAT_P,temp1_ullong,temp2_ullong,
+ (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)),
+ (unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
}
nfound++;
}
@@ -1419,7 +1473,8 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullong,temp1_ullong,temp2_ullong, (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
+ parallel_print(ULLI_FORMAT,temp1_ullong,temp2_ullong,
+ (unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
}
nfound++;
}
@@ -1444,7 +1499,6 @@ hsize_t diff_datum(void *_mem1,
memcpy(&temp1_float, mem1, sizeof(float));
memcpy(&temp2_float, mem2, sizeof(float));
-
/* -d and !-p */
if (options->d && !options->p)
{
@@ -1455,7 +1509,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
+ parallel_print(F_FORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
}
nfound++;
}
@@ -1470,7 +1524,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float), fabs(1-temp2_float/temp1_float));
+ parallel_print(F_FORMAT_P,temp1_float,temp2_float,fabs(temp1_float-temp2_float), fabs(1-temp2_float/temp1_float));
}
nfound++;
}
@@ -1488,7 +1542,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float), fabs(1-temp2_float/temp1_float));
+ parallel_print(F_FORMAT_P,temp1_float,temp2_float,fabs(temp1_float-temp2_float), fabs(1-temp2_float/temp1_float));
}
nfound++;
}
@@ -1501,7 +1555,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
+ parallel_print(F_FORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
}
nfound++;
}
@@ -1531,7 +1585,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
+ parallel_print(F_FORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
}
nfound++;
}
@@ -1546,7 +1600,7 @@ hsize_t diff_datum(void *_mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double), fabs(1-temp2_double/temp1_double));
+ parallel_print(F_FORMAT_P,temp1_double,temp2_double,fabs(temp1_double-temp2_double), fabs(1-temp2_double/temp1_double));
}
nfound++;
}
@@ -1563,7 +1617,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double), fabs(1-temp2_double/temp1_double));
+ parallel_print(F_FORMAT_P,temp1_double,temp2_double,fabs(temp1_double-temp2_double), fabs(1-temp2_double/temp1_double));
}
nfound++;
}
@@ -1576,7 +1630,7 @@ hsize_t diff_datum(void *_mem1,
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
+ parallel_print(F_FORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
}
nfound++;
@@ -1627,7 +1681,7 @@ hsize_t diff_char(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(CFORMAT,temp1_uchar,temp2_uchar);
+ parallel_print(C_FORMAT,temp1_uchar,temp2_uchar);
}
nfound++;
}
@@ -1847,7 +1901,7 @@ hsize_t diff_native_uchar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
}
@@ -1861,7 +1915,7 @@ hsize_t diff_native_uchar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
}
@@ -1876,7 +1930,7 @@ hsize_t diff_native_uchar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar), abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
}
@@ -1887,7 +1941,7 @@ hsize_t diff_native_uchar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
}
@@ -1939,7 +1993,7 @@ hsize_t diff_float(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
+ parallel_print(F_FORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
}
nfound++;
}
@@ -1965,7 +2019,7 @@ hsize_t diff_float(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float),
+ parallel_print(F_FORMAT_P,temp1_float,temp2_float,fabs(temp1_float-temp2_float),
fabs(1-temp2_float/temp1_float));
}
nfound++;
@@ -1993,7 +2047,7 @@ hsize_t diff_float(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float),
+ parallel_print(F_FORMAT_P,temp1_float,temp2_float,fabs(temp1_float-temp2_float),
fabs(1-temp2_float/temp1_float));
}
nfound++;
@@ -2018,7 +2072,7 @@ hsize_t diff_float(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
+ parallel_print(F_FORMAT,temp1_float,temp2_float,fabs(temp1_float-temp2_float));
}
nfound++;
}
@@ -2079,7 +2133,7 @@ hsize_t diff_double(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
+ parallel_print(F_FORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
}
nfound++;
}
@@ -2105,7 +2159,7 @@ hsize_t diff_double(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double),
+ parallel_print(F_FORMAT_P,temp1_double,temp2_double,fabs(temp1_double-temp2_double),
fabs(1-temp2_double/temp1_double));
}
nfound++;
@@ -2133,7 +2187,7 @@ hsize_t diff_double(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FPFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double),
+ parallel_print(F_FORMAT_P,temp1_double,temp2_double,fabs(temp1_double-temp2_double),
fabs(1-temp2_double/temp1_double));
}
nfound++;
@@ -2158,7 +2212,7 @@ hsize_t diff_double(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(FFORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
+ parallel_print(F_FORMAT,temp1_double,temp2_double,fabs(temp1_double-temp2_double));
}
nfound++;
}
@@ -2216,7 +2270,7 @@ hsize_t diff_schar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
+ parallel_print(I_FORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
}
nfound++;
}
@@ -2242,7 +2296,7 @@ hsize_t diff_schar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char),
+ parallel_print(I_FORMAT_P,temp1_char,temp2_char,abs(temp1_char-temp2_char),
abs(1-temp2_char/temp1_char));
}
nfound++;
@@ -2270,7 +2324,7 @@ hsize_t diff_schar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char),
+ parallel_print(I_FORMAT_P,temp1_char,temp2_char,abs(temp1_char-temp2_char),
abs(1-temp2_char/temp1_char));
}
nfound++;
@@ -2296,7 +2350,7 @@ hsize_t diff_schar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
+ parallel_print(I_FORMAT,temp1_char,temp2_char,abs(temp1_char-temp2_char));
}
nfound++;
}
@@ -2356,7 +2410,7 @@ hsize_t diff_uchar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
}
@@ -2383,7 +2437,7 @@ hsize_t diff_uchar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar),
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar),
abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
@@ -2411,7 +2465,7 @@ hsize_t diff_uchar(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar),
+ parallel_print(I_FORMAT_P,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar),
abs(1-temp2_uchar/temp1_uchar));
}
nfound++;
@@ -2437,7 +2491,7 @@ hsize_t diff_uchar(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
+ parallel_print(I_FORMAT,temp1_uchar,temp2_uchar,abs(temp1_uchar-temp2_uchar));
}
nfound++;
}
@@ -2495,7 +2549,7 @@ hsize_t diff_short(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
+ parallel_print(I_FORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
}
nfound++;
}
@@ -2522,7 +2576,7 @@ hsize_t diff_short(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short),
+ parallel_print(I_FORMAT_P,temp1_short,temp2_short,abs(temp1_short-temp2_short),
abs(1-temp2_short/temp1_short));
}
nfound++;
@@ -2552,7 +2606,7 @@ hsize_t diff_short(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short),
+ parallel_print(I_FORMAT_P,temp1_short,temp2_short,abs(temp1_short-temp2_short),
abs(1-temp2_short/temp1_short));
}
nfound++;
@@ -2578,7 +2632,7 @@ hsize_t diff_short(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
+ parallel_print(I_FORMAT,temp1_short,temp2_short,abs(temp1_short-temp2_short));
}
nfound++;
}
@@ -2636,7 +2690,7 @@ hsize_t diff_ushort(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
+ parallel_print(I_FORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
}
nfound++;
}
@@ -2663,7 +2717,7 @@ hsize_t diff_ushort(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort),
+ parallel_print(I_FORMAT_P,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort),
abs(1-temp2_ushort/temp1_ushort));
}
nfound++;
@@ -2693,7 +2747,7 @@ hsize_t diff_ushort(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort),
+ parallel_print(I_FORMAT_P,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort),
abs(1-temp2_ushort/temp1_ushort));
}
nfound++;
@@ -2719,7 +2773,7 @@ hsize_t diff_ushort(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
+ parallel_print(I_FORMAT,temp1_ushort,temp2_ushort,abs(temp1_ushort-temp2_ushort));
}
nfound++;
}
@@ -2762,8 +2816,7 @@ hsize_t diff_int(unsigned char *mem1,
int temp1_int;
int temp2_int;
hsize_t i;
- double per;
-
+ float per;
/* -d and !-p */
if (options->d && !options->p)
@@ -2780,7 +2833,7 @@ hsize_t diff_int(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
+ parallel_print(I_FORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
}
nfound++;
}
@@ -2801,17 +2854,14 @@ hsize_t diff_int(unsigned char *mem1,
memcpy(&temp1_int, mem1, sizeof(int));
memcpy(&temp2_int, mem2, sizeof(int));
- per=-1;
- if (temp1_int!=0)
- per = fabs(1-( (double)temp2_int / (double)temp1_int ));
-
+ PER(temp1_int,temp2_int);
if ( per > options->percent )
{
if ( print_data(options) )
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
+ parallel_print(I_FORMAT_P,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
}
nfound++;
}
@@ -2833,17 +2883,14 @@ hsize_t diff_int(unsigned char *mem1,
memcpy(&temp1_int, mem1, sizeof(int));
memcpy(&temp2_int, mem2, sizeof(int));
- per=-1;
- if (temp1_int!=0)
- per = fabs(1-( (double)temp2_int / (double)temp1_int ));
-
+ PER(temp1_int,temp2_int);
if ( per > options->percent && abs(temp1_int-temp2_int) > options->delta )
{
if ( print_data(options) )
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
+ parallel_print(I_FORMAT_P,temp1_int,temp2_int,abs(temp1_int-temp2_int),per);
}
nfound++;
}
@@ -2868,7 +2915,7 @@ hsize_t diff_int(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
+ parallel_print(I_FORMAT,temp1_int,temp2_int,abs(temp1_int-temp2_int));
}
nfound++;
}
@@ -2928,7 +2975,7 @@ hsize_t diff_uint(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint));
+ parallel_print(I_FORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint));
}
nfound++;
}
@@ -2955,7 +3002,7 @@ hsize_t diff_uint(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint),
+ parallel_print(I_FORMAT_P,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint),
abs(1-temp2_uint/temp1_uint));
}
nfound++;
@@ -2985,7 +3032,7 @@ hsize_t diff_uint(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IPFORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint),
+ parallel_print(I_FORMAT_P,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint),
abs(1-temp2_uint/temp1_uint));
}
nfound++;
@@ -3011,7 +3058,7 @@ hsize_t diff_uint(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(IFORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint));
+ parallel_print(I_FORMAT,temp1_uint,temp2_uint,abs(temp1_uint-temp2_uint));
}
nfound++;
}
@@ -3073,7 +3120,7 @@ hsize_t diff_long(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
+ parallel_print(LI_FORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
}
nfound++;
}
@@ -3102,7 +3149,7 @@ hsize_t diff_long(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long),
+ parallel_print(LI_FORMAT_P,temp1_long,temp2_long,labs(temp1_long-temp2_long),
labs(1-temp2_long/temp1_long));
}
nfound++;
@@ -3132,7 +3179,7 @@ hsize_t diff_long(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long),
+ parallel_print(LI_FORMAT_P,temp1_long,temp2_long,labs(temp1_long-temp2_long),
labs(1-temp2_long/temp1_long));
}
nfound++;
@@ -3158,7 +3205,7 @@ hsize_t diff_long(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
+ parallel_print(LI_FORMAT,temp1_long,temp2_long,labs(temp1_long-temp2_long));
}
nfound++;
}
@@ -3222,7 +3269,7 @@ hsize_t diff_ulong(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong));
+ parallel_print(LI_FORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong));
}
nfound++;
}
@@ -3251,7 +3298,7 @@ hsize_t diff_ulong(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong),
+ parallel_print(LI_FORMAT_P,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong),
labs(1-temp2_ulong/temp1_ulong));
}
nfound++;
@@ -3281,7 +3328,7 @@ hsize_t diff_ulong(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LPIFORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong),
+ parallel_print(LI_FORMAT_P,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong),
labs(1-temp2_ulong/temp1_ulong));
}
nfound++;
@@ -3307,7 +3354,7 @@ hsize_t diff_ulong(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(LIFORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong));
+ parallel_print(LI_FORMAT,temp1_ulong,temp2_ulong,labs(temp1_ulong-temp2_ulong));
}
nfound++;
}
@@ -3350,20 +3397,6 @@ hsize_t diff_llong(unsigned char *mem1,
long_long temp1_llong;
long_long temp2_llong;
hsize_t i;
-
-#if 0
- static char fmt_llong[255];
- static char fmt_llongp[255];
-
- if (!fmt_llong[0]) {
- /* build default formats for long long types */
- sprintf(fmt_llong, "%%%sd %%%sd %%%sd\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- sprintf(fmt_llongp, "%%%sd %%%sd %%%sd %%%sd\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- }
-#endif
-
/* -d and !-p */
if (options->d && !options->p)
@@ -3510,16 +3543,6 @@ hsize_t diff_ullong(unsigned char *mem1,
unsigned long_long temp1_ullong;
unsigned long_long temp2_ullong;
hsize_t i;
- static char fmt_ullong[255];
- static char fmt_ullongp[255];
-
- if (!fmt_ullong[0]) {
- /* build default formats for long long types */
- sprintf(fmt_ullong, "%%%su %%%su %%%su\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- sprintf(fmt_ullongp, "%%%su %%%su %%%su %%%su\n",
- H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH, H5_PRINTF_LL_WIDTH);
- }
/* -d and !-p */
@@ -3537,7 +3560,7 @@ hsize_t diff_ullong(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullong,temp1_ullong,temp2_ullong,
+ parallel_print(ULLI_FORMAT,temp1_ullong,temp2_ullong,
(unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
}
nfound++;
@@ -3565,7 +3588,7 @@ hsize_t diff_ullong(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullongp,temp1_ullong,temp2_ullong,
+ parallel_print(ULLI_FORMAT_P,temp1_ullong,temp2_ullong,
(unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)),
(unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
}
@@ -3596,7 +3619,7 @@ hsize_t diff_ullong(unsigned char *mem1,
{
print_pos(ph,1,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullongp,temp1_ullong,temp2_ullong,
+ parallel_print(ULLI_FORMAT_P,temp1_ullong,temp2_ullong,
(unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)),
(unsigned long_long)labs((long)(1-temp2_ullong/temp1_ullong)));
}
@@ -3623,7 +3646,7 @@ hsize_t diff_ullong(unsigned char *mem1,
{
print_pos(ph,0,i,acc,pos,rank,obj1,obj2);
parallel_print(SPACES);
- parallel_print(fmt_ullong,temp1_ullong,temp2_ullong,
+ parallel_print(ULLI_FORMAT,temp1_ullong,temp2_ullong,
(unsigned long_long)labs((long)(temp1_ullong-temp2_ullong)));
}
nfound++;
@@ -3640,3 +3663,5 @@ hsize_t diff_ullong(unsigned char *mem1,
return nfound;
}
+
+
diff --git a/tools/lib/h5diff_dset.c b/tools/lib/h5diff_dset.c
index 9c7368f..868eedf 100644
--- a/tools/lib/h5diff_dset.c
+++ b/tools/lib/h5diff_dset.c
@@ -235,40 +235,14 @@ hsize_t diff_datasetid( hid_t dset1_id,
}
/*-------------------------------------------------------------------------
- * only attempt to compare if possible
- *-------------------------------------------------------------------------
- */
- if (cmp)
- {
-
-/*-------------------------------------------------------------------------
- * get number of elements
- *-------------------------------------------------------------------------
- */
- nelmts1 = 1;
- for (i = 0; i < rank1; i++)
- {
- nelmts1 *= dims1[i];
- }
-
- nelmts2 = 1;
- for (i = 0; i < rank2; i++)
- {
- nelmts2 *= dims2[i];
- }
-
- /* only assert if the space is the same */
- assert(nelmts1==nelmts2);
-
-/*-------------------------------------------------------------------------
* memory type and sizes
*-------------------------------------------------------------------------
*/
if ((m_type1=h5tools_get_native_type(f_type1))<0)
- goto error;
-
+ goto error;
+
if ((m_type2=h5tools_get_native_type(f_type2))<0)
- goto error;
+ goto error;
m_size1 = H5Tget_size( m_type1 );
m_size2 = H5Tget_size( m_type2 );
@@ -282,7 +256,7 @@ hsize_t diff_datasetid( hid_t dset1_id,
* check for different signed/unsigned types
*-------------------------------------------------------------------------
*/
-
+
sign1=H5Tget_sign(m_type1);
sign2=H5Tget_sign(m_type2);
if ( sign1 != sign2 )
@@ -297,6 +271,32 @@ hsize_t diff_datasetid( hid_t dset1_id,
}
/*-------------------------------------------------------------------------
+ * only attempt to compare if possible
+ *-------------------------------------------------------------------------
+ */
+ if (cmp)
+ {
+
+/*-------------------------------------------------------------------------
+ * get number of elements
+ *-------------------------------------------------------------------------
+ */
+ nelmts1 = 1;
+ for (i = 0; i < rank1; i++)
+ {
+ nelmts1 *= dims1[i];
+ }
+
+ nelmts2 = 1;
+ for (i = 0; i < rank2; i++)
+ {
+ nelmts2 *= dims2[i];
+ }
+
+ /* only assert if the space is the same */
+ assert(nelmts1==nelmts2);
+
+/*-------------------------------------------------------------------------
* "upgrade" the smaller memory size
*-------------------------------------------------------------------------
*/
diff --git a/tools/lib/h5diff_util.c b/tools/lib/h5diff_util.c
index 32b3583..100057f 100644
--- a/tools/lib/h5diff_util.c
+++ b/tools/lib/h5diff_util.c
@@ -89,70 +89,6 @@ printf("Result: bytes_written=%ld, OUTBUFF_SIZE-outBuffOffset=%ld\n", (long)byte
va_end(ap);
}
-/*-------------------------------------------------------------------------
- * Function: print_pos
- *
- * Purpose: convert an array index position to matrix notation
- *
- * Return: pos matrix array
- *
- * Programmer: Pedro Vicente, pvn@ncsa.uiuc.edu
- *
- * Date: May 9, 2003
- *
- *-------------------------------------------------------------------------
- */
-void print_pos( int *ph,
- int per,
- hsize_t curr_pos,
- hsize_t *acc,
- hsize_t *pos,
- int rank,
- const char *obj1,
- const char *obj2 )
-{
- int i;
-
- /* print header */
- if ( *ph==1 )
- {
- *ph=0;
- if (per)
- {
- parallel_print("%-15s %-15s %-15s %-15s %-15s\n",
- "position",
- (obj1!=NULL) ? obj1 : " ",
- (obj2!=NULL) ? obj2 : " ",
- "difference",
- "relative");
- parallel_print("------------------------------------------------------------------------\n");
- }
- else
- {
- parallel_print("%-15s %-15s %-15s %-20s\n",
- "position",
- (obj1!=NULL) ? obj1 : " ",
- (obj2!=NULL) ? obj2 : " ",
- "difference");
- parallel_print("------------------------------------------------------------\n");
- }
- }
-
- for ( i = 0; i < rank; i++)
- {
- pos[i] = curr_pos/acc[i];
- curr_pos -= acc[i]*pos[i];
- }
- assert( curr_pos == 0 );
-
- parallel_print("[ " );
- for ( i = 0; i < rank; i++)
- {
-/* HDfprintf(stdout,"%Hu ", pos[i] ); */
- parallel_print("%"H5_PRINTF_LL_WIDTH"u ", (unsigned long_long)pos[i]);
- }
- parallel_print("]" );
-}
/*-------------------------------------------------------------------------
* Function: print_dims
diff --git a/tools/testfiles/h5diff_57.txt b/tools/testfiles/h5diff_57.txt
index 82c0afc..fb5137b 100644
--- a/tools/testfiles/h5diff_57.txt
+++ b/tools/testfiles/h5diff_57.txt
@@ -6,14 +6,7 @@ Warning: Different storage datatype
</dset7a> has file datatype H5T_STD_I8LE
</dset7b> has file datatype H5T_STD_U8LE
Comparison not supported: </dset7a> has sign H5T_SGN_2 and </dset7b> has sign H5T_SGN_NONE
-position dset7a dset7b difference
-------------------------------------------------------------
-[ 0 0 ] -1 1 2
-[ 1 0 ] -1 1 2
-[ 1 1 ] -1 1 2
-[ 2 0 ] -1 1 2
-[ 2 1 ] -1 1 2
-5 differences found
+0 differences found
--------------------------------
Some objects are not comparable
--------------------------------