/mnt/gnu/gcc-3.3/objdir/gcc/xgcc -shared-libgcc -B/mnt/gnu/gcc-3.3/objdir/gcc/ - nostdinc++ -L/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/libstdc++-v3/src -L/m nt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/libstdc++-v3/src/.libs -B/opt/gnu/gc c/gcc-3.5.0/hppa2.0w-hp-hpux11.11/bin/ -B/opt/gnu/gcc/gcc-3.5.0/hppa2.0w-hp-hpux 11.11/lib/ -isystem /opt/gnu/gcc/gcc-3.5.0/hppa2.0w-hp-hpux11.11/include -isyste m /opt/gnu/gcc/gcc-3.5.0/hppa2.0w-hp-hpux11.11/sys-include -I/mnt/gnu/gcc-3.3/gc c/libstdc++-v3/../gcc -I/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11/libstdc++- v3/include/hppa2.0w-hp-hpux11.11 -I/mnt/gnu/gcc-3.3/objdir/hppa2.0w-hp-hpux11.11 /libstdc++-v3/include -I/mnt/gnu/gcc-3.3/gcc/libstdc++-v3/libsupc++ -O2 -g -O2 - g -O2 -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -fdiagno stics-show-location=once -c ../../../../gcc/libstdc++-v3/libsupc++/eh_alloc.cc -fPIC -DPIC -o eh_alloc.o ../../../../gcc/libstdc++-v3/libsupc++/eh_alloc.cc: In function `void __cxxabiv1 ::__cxa_free_exception(void*)': ../../../../gcc/libstdc++-v3/libsupc++/eh_alloc.cc:176: error: insn outside basi c block (insn 127 78 128 14 (set (reg:SI 26 %r26) (reg/f:SI 90 virtual-stack-vars)) -1 (nil) (nil)) ../../../../gcc/libstdc++-v3/libsupc++/eh_alloc.cc:176: internal compiler error: in rtl_verify_flow_info, at cfgrtl.c:2232
Created attachment 7094 [details] Preprocessed source
I almost think this is a dup of bug 17382, as all four OS's use setjmp/longjmp exceptions.
Confirmed, reduced to: void __gthread_mutex_lock (); void __cxa_free_exception(void *vptr) throw() { __gthread_mutex_lock (); }
*** Bug 17382 has been marked as a duplicate of this bug. ***
A compiler build with configure --enable-sjlj-exceptions exposes this bug on all targets I could try it on.
The problem is in except.c:sjlj_emit_function_exit
The patch in PR 17186 allows me able to bootstrap on i686-pc-openbsd3.1, results will follow soon.
This is fixed now too by RTH's patch.