This is the mail archive of the mailing list for the GCC project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug target/33286] New: All exception related tests fail

All exception related tests fail on this target.  For example,

Executing on host: /home/gnu/gcc/objdir/gcc/xgcc -B/home/gnu/gcc/objdir/gcc/
x/gnu/gcc/gcc/gcc/testsuite/gcc.dg/cleanup-5.c   -fexceptions -fno-show-column
-lm   -o ./cleanup-5.exe    (timeout = 300)
PASS: gcc.dg/cleanup-5.c (test for excess errors)
Setting LD_LIBRARY_PATH to :/xxx/gnu/gcc/objdir/gcc::/xxx/gnu/gcc/objdir/gcc
FAIL: gcc.dg/cleanup-5.c execution test

I find in debugging this failure that the tests fail because
init_dwarf_reg_size_table is not being called.  This leads to an
assert failure in _Unwind_SetSpColumn.

Sadly, checking must have been disabled in previous testing on this
target.  The problem doesn't occur in hpux11.11 because a fix was added
to the libc version of pthread_once to call init_dwarf_reg_size_table.
This was added in PHCO_29495. 

The fundamental problem is that threads are not active unless programs
are compiled and linked with -pthreads.  The shared version of libc
contains stub implementations of the pthread, and as noted the hpux11.00
stub for pthread_once doesn't call the init routine.

I think the simplest fix is to provide an hppa-hpux specific version of

/* Return TRUE is application is linked with libpthread.  */
extern int __get_ismt (void);
static inline int
__gthread_active_p (void)
  return __get_ismt () == 2;

__get_ismt() appears to have been introduced in PHCO_22923 on hpux11.00,
so we may need a configure test for it.  On the otherhand, I don't really
want to support old versions of libc.

The other approach to fixing this would be to always link against libpthread
when exception support is needed.

           Summary: All exception related tests fail
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: danglin at gcc dot gnu dot org
 GCC build triplet: hppa*-*-hpux11.00
  GCC host triplet: hppa*-*-hpux11.00
GCC target triplet: hppa*-*-hpux11.00

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]