[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[creduce-bugs] clang_delta::reduce-pointer-level crashes
Greetings creduce devs,
I was greeted by some crash messages while reducing a compiler abort
test this morning. Your tool was helpful enough to generate some
bug-reports for me, so I am forwarding them to you as requested.
I'm using creduce 2.2.1, perl 5.10.0, delta 2003.7.14, and clang 3.5.0
I hope these reports are helpful.
Bavier
typedef int MPI_Comm ;
typedef long long int HYPRE_Int ;
typedef MPI_Comm hypre_MPI_Comm ;
void hypre_MPI_Comm_rank ( void ) ;
typedef struct {
HYPRE_Int num_rows ;
}
hypre_CSRMatrix ;
typedef struct {
MPI_Comm comm ;
hypre_CSRMatrix * diag ;
}
hypre_ParCSRMatrix ;
HYPRE_Int AmgCGCPrepare_mpirank;
HYPRE_Int *AmgCGCPrepare_vertexrange = 0;
hypre_ParCSRMatrix * AmgCGCPrepare_S;
HYPRE_Int AmgCGCPrepare_nlocal;
HYPRE_Int * AmgCGCPrepare_CF_marker;
HYPRE_Int * AmgCGCPrepare_CF_marker_offd;
HYPRE_Int AmgCGCPrepare_coarsen_type;
HYPRE_Int * AmgCGCPrepare_vrange;
void AmgCGCPrepare ( void ) {
HYPRE_Int vstart ;
HYPRE_Int i ;
HYPRE_Int num_variables = AmgCGCPrepare_S -> diag -> num_rows ;
MPI_Comm comm = AmgCGCPrepare_S -> comm ;
hypre_MPI_Comm_rank ( ) ;
vstart = AmgCGCPrepare_vertexrange [ AmgCGCPrepare_mpirank ] ;
if ( AmgCGCPrepare_coarsen_type % 2 == 1 )
for ( i = 0 ;
i < num_variables ;
i ++ ) if ( AmgCGCPrepare_CF_marker [ i ] > 0 ) AmgCGCPrepare_CF_marker [ i ] += vstart ;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=4 creduce_bug_51472
;
long AmgCGCPrepare_mpirank;
long *AmgCGCPrepare_vertexrange ;
long *AmgCGCPrepare_CF_marker;
void
AmgCGCPrepare ( )
{
long vstart;
long i;
long num_variables = vstart = AmgCGCPrepare_mpirank;
for ( i = 0; i < num_variables; i++ )
if ( i )
AmgCGCPrepare_CF_marker[i] += vstart;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=2 creduce_bug_174391
long a;
long *b;
void fn1() {
long c, i, d = c = a;
i = 0;
for (; i < d; i++)
if (i)
b[i] = c;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=1 creduce_bug_428500
;
long AmgCGCPrepare_mpirank;
long AmgCGCPrepare_vertexrange ;
long *AmgCGCPrepare_CF_marker;
void
AmgCGCPrepare ( )
{
long vstart;
long i;
long num_variables = vstart = AmgCGCPrepare_mpirank;
for ( i = 0; i < num_variables; i++ )
if ( i )
AmgCGCPrepare_CF_marker[i] += vstart;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=1 creduce_bug_628495
typedef int MPI_Comm ;
typedef long long int HYPRE_Int ;
typedef MPI_Comm hypre_MPI_Comm ;
void hypre_MPI_Comm_rank ( void ) ;
typedef struct {
HYPRE_Int num_rows ;
}
hypre_CSRMatrix ;
typedef struct {
MPI_Comm comm ;
hypre_CSRMatrix * diag ;
}
hypre_ParCSRMatrix ;
HYPRE_Int AmgCGCPrepare_mpirank;
HYPRE_Int *AmgCGCPrepare_vertexrange = 0;
hypre_ParCSRMatrix AmgCGCPrepare_S;
HYPRE_Int AmgCGCPrepare_nlocal;
HYPRE_Int * AmgCGCPrepare_CF_marker;
HYPRE_Int * AmgCGCPrepare_CF_marker_offd;
HYPRE_Int AmgCGCPrepare_coarsen_type;
HYPRE_Int * AmgCGCPrepare_vrange;
void AmgCGCPrepare ( void ) {
HYPRE_Int vstart ;
HYPRE_Int i ;
HYPRE_Int num_variables = AmgCGCPrepare_S . diag -> num_rows ;
MPI_Comm comm = AmgCGCPrepare_S . comm ;
hypre_MPI_Comm_rank ( ) ;
vstart = AmgCGCPrepare_vertexrange [ AmgCGCPrepare_mpirank ] ;
if ( AmgCGCPrepare_coarsen_type % 2 == 1 )
for ( i = 0 ;
i < num_variables ;
i ++ ) if ( AmgCGCPrepare_CF_marker [ i ] > 0 ) AmgCGCPrepare_CF_marker [ i ] += vstart ;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=3 creduce_bug_714548
typedef int MPI_Comm ;
typedef long long int HYPRE_Int ;
typedef MPI_Comm hypre_MPI_Comm ;
void hypre_MPI_Comm_rank ( void ) ;
typedef struct {
HYPRE_Int num_rows ;
}
hypre_CSRMatrix ;
typedef struct {
MPI_Comm comm ;
hypre_CSRMatrix * diag ;
}
hypre_ParCSRMatrix ;
HYPRE_Int AmgCGCPrepare_mpirank;
HYPRE_Int *AmgCGCPrepare_vertexrange = 0;
hypre_ParCSRMatrix * AmgCGCPrepare_S;
HYPRE_Int AmgCGCPrepare_nlocal;
HYPRE_Int * AmgCGCPrepare_CF_marker;
HYPRE_Int ** AmgCGCPrepare_CF_marker_offd;
HYPRE_Int AmgCGCPrepare_coarsen_type;
HYPRE_Int ** AmgCGCPrepare_vrange;
void AmgCGCPrepare ( void ) {
HYPRE_Int vstart ;
HYPRE_Int i ;
HYPRE_Int num_variables = AmgCGCPrepare_S -> diag -> num_rows ;
MPI_Comm comm = AmgCGCPrepare_S -> comm ;
hypre_MPI_Comm_rank ( ) ;
vstart = AmgCGCPrepare_vertexrange [ AmgCGCPrepare_mpirank ] ;
if ( AmgCGCPrepare_coarsen_type % 2 == 1 )
for ( i = 0 ;
i < num_variables ;
i ++ ) if ( AmgCGCPrepare_CF_marker [ i ] > 0 ) AmgCGCPrepare_CF_marker [ i ] += vstart ;
}
// this should reproduce the crash:
// clang_delta --transformation=reduce-pointer-level --counter=6 creduce_bug_876730