Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 28 Feb 2016 04:46:35 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-bugs@FreeBSD.org
Subject:   [Bug 207359] projects/clang380-import for TARGET_ARCH=powerpc64 via powerpc64-gcc : c++ exceptions unbounded loop in _Unwind_RaiseException (9 line program)
Message-ID:  <bug-207359-8-6E72vBL6BV@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-207359-8@https.bugs.freebsd.org/bugzilla/>
References:  <bug-207359-8@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D207359

--- Comment #9 from Mark Millard <markmi@dsl-only.net> ---
A find over /usr/src/ with egrep use suggests that the later files listed a=
re
files that use the cfa fields. They match the pattern:

[.>]cfa_(offset|reg|exp|how)


/usr/src/contrib/gcc/config/mips/linux-unwind.h
/usr/src/contrib/gcc/config/rs6000/linux-unwind.h
/usr/src/contrib/gcc/config/rs6000/darwin-fallback.c
/usr/src/contrib/gcc/config/i386/linux-unwind.h
/usr/src/contrib/gcc/config/sparc/linux-unwind.h
/usr/src/contrib/gcc/config/s390/tpf-unwind.h
/usr/src/contrib/gcc/config/s390/linux-unwind.h
/usr/src/contrib/gcc/unwind-dw2.c
/usr/src/contrib/gcc/dwarf2out.c
/usr/src/contrib/gdb/gdb/dwarf2-frame.c
/usr/src/contrib/binutils/gas/dw2gencfi.c
/usr/src/contrib/binutils/binutils/dwarf.c

And _Unwind_FrameState is mentioned in each of:

/usr/src/contrib/gcc/config/mips/linux-unwind.h
/usr/src/contrib/gcc/config/rs6000/linux-unwind.h
/usr/src/contrib/gcc/config/rs6000/darwin-fallback.c
/usr/src/contrib/gcc/config/rs6000/darwin-unwind.h
/usr/src/contrib/gcc/config/i386/linux-unwind.h
/usr/src/contrib/gcc/config/sparc/linux-unwind.h
/usr/src/contrib/gcc/config/s390/tpf-unwind.h
/usr/src/contrib/gcc/config/s390/linux-unwind.h
/usr/src/contrib/gcc/config/ia64/unwind-ia64.c
/usr/src/contrib/gcc/config/ia64/linux-unwind.h
/usr/src/contrib/gcc/doc/tm.texi
/usr/src/contrib/gcc/unwind-sjlj.c
/usr/src/contrib/gcc/ChangeLog-2006
/usr/src/contrib/gcc/ChangeLog-2001
/usr/src/contrib/gcc/unwind.inc
/usr/src/contrib/gcc/unwind-dw2.h
/usr/src/contrib/gcc/unwind-dw2.c
/usr/src/contrib/gcc/ChangeLog-2004
/usr/src/contrib/gcc/ChangeLog-2003


That in turn suggests that they are most(?) of the files that would be tied=
 to
any attempt to have DW_CFA_remember_state/DW_CFA_restore_state save and res=
tore
the cfa information.

One possibility is moving the fields into the saved/restored area (regs, al=
ong
with the contained fields prev and reg). Access notation would then be based
on:

->regs.cfa_offset and .regs.cfa_offset
->regs.cfa_reg and .regs.cfa_reg
->regs.cfa_exp and .regs.cfa_exp
->regs.cfa_how and .regs.cfa_how

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-207359-8-6E72vBL6BV>