This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug debug/48043] [4.6 Regression] pr47201: var-tracking loc_order_check fails for type punning examples
- From: "jakub at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Thu, 10 Mar 2011 14:37:55 +0000
- Subject: [Bug debug/48043] [4.6 Regression] pr47201: var-tracking loc_order_check fails for type punning examples
- Auto-submitted: auto-generated
- References: <bug-48043-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48043
--- Comment #7 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-03-10 14:37:39 UTC ---
If there isn't a mode mismatch in the instruction stream, then no.
The problem is that because of the delegitimizate address bug adjust_insn
in var-tracking (temporarily) changed the insn into
(set (reg:SF ...) (symbol_ref:SI ...))
(SET_SRC coming from delegitimizing a (mem:SF ...)) and var-tracking not
expecting mode mismatches.
If there is (set (reg:SF ...) (subreg:SF (reg:SI ...))) or something similar,
var-tracking ought to handle it correctly, sorry for the false alarm in #c3, I
wrote it without looking carefully into it.
Thanks for testing the patch, I'll post it to gcc-patches momentarily.