This is the mail archive of the gcc@gcc.gnu.org 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]

Re: crash: longjmp vs -fprofile-arcs


Here is the crash log for GNU C version 3.3 20021126 (experimental) (powerpc-apple-darwin6.2) (fsf-version):

Date/Time: 2002-12-06 19:04:18 -0800
OS Version: 10.2.2 (Build 6F21)
Host: il0503d-dhcp84.apple.com

Command: cc1
PID: 19935

Exception: EXC_BAD_ACCESS (0x0001)
Codes: KERN_PROTECTION_FAILURE (0x0002) at 0x00000018

Thread 0 Crashed:
#0 0x00218e4c in insert_insn_on_edge (cfgrtl.c:1300)
#1 0x002b32b4 in flow_call_edges_add (cfganal.c:326)
#2 0x00136ecc in branch_prob (profile.c:793)
#3 0x00099d28 in rest_of_compilation (toplev.c:3002)
#4 0x00022d98 in c_expand_body (c-decl.c:6528)
#5 0x00022928 in finish_function (c-decl.c:6401)
#6 0x00002fc0 in yyparse (c-parse.c:404)
#7 0x00010b68 in c_common_parse_file (c-lex.c:160)
#8 0x00098d40 in compile_file (toplev.c:2130)
#9 0x0009e280 in do_compile (toplev.c:5355)
#10 0x0009e34c in toplev_main (toplev.c:5385)
#11 0x00001cb8 in _start (crt.c:267)
#12 0x00001b38 in start

PPC Thread State:
srr0: 0x00218e4c srr1: 0x0000d930 vrsave: 0x00000000
xer: 0x00000000 lr: 0x00218e3c ctr: 0x90074080 mq: 0x00000000
r0: 0x002b32b4 r1: 0xbffff180 r2: 0x00374320 r3: 0x00dc6dc0
r4: 0x00000000 r5: 0x00000000 r6: 0x00000048 r7: 0x00000018
r8: 0x00000047 r9: 0x00000008 r10: 0xafafafaf r11: 0x0038f12c
r12: 0x28002222 r13: 0x00349318 r14: 0x00366e48 r15: 0x00376e48
r16: 0x0034f70c r17: 0x00376e48 r18: 0x00967422 r19: 0x00349318
r20: 0x00379318 r21: 0x00349318 r22: 0x00000000 r23: 0x00000001
r24: 0x00000000 r25: 0x003731ac r26: 0x00000000 r27: 0x00dae360
r28: 0x003731ac r29: 0x00dc6dc0 r30: 0x00000000 r31: 0x00218e3c




On Friday, Dec 6, 2002, at 18:22 US/Pacific, Dale Johannesen wrote:

#include <setjmp.h>
int foo (jmp_buf buf) { longjmp(buf, 1); }

now what? cc -fprofile-arcs lj.c
lj.c: In function `foo':
lj.c:2: internal error: Bus error
Please submit a full bug report, blah blah

It seems the block that calls longjmp has no successors, and the code in profile.c
is not expecting that. I'm not sure what the right thing is, could somebody look?








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