This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug rtl-optimization/23585] [4.0 regression] mem_fun* code fine with -O1, bus error with -O2
- From: "mmitchel at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 11 Oct 2005 22:05:31 -0000
- Subject: [Bug rtl-optimization/23585] [4.0 regression] mem_fun* code fine with -O1, bus error with -O2
- References: <bug-23585-11161@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #17 from mmitchel at gcc dot gnu dot org 2005-10-11 22:05 -------
Eric --
Sorry -- my idea about fixing this in the front end is bogus. It's OK to
dereference a pointer-to-member to a virtual function member even if the base
class doesn't have any virtual functions; c.f., g++.old-deja/g++.martin/pmf1.C.
So, I've unassigned myself; you'll have to look for a solution in the back end.
I don't understand your Comment #12 regarding MEM_NO_TRAP_P; MEM_NO_TRAP_P
calls rtx_addr_can_trap_p. I'd suspect that making rtx_addr_can_trap_p respect
STRICT_ALIGNMENT (by checking the values of the CONST_INT added to the
non-trapping address) would work.
--
mmitchel at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
AssignedTo|mmitchel at gcc dot gnu dot |unassigned at gcc dot gnu
|org |dot org
Status|ASSIGNED |NEW
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23585