public inbox for java-prs@sourceware.org help / color / mirror / Atom feed
From: "jakub at gcc dot gnu dot org" <gcc-bugzilla@gcc.gnu.org> To: java-prs@gcc.gnu.org Subject: [Bug middle-end/32758] [4.3 Regression] ecj1 hangs Date: Wed, 29 Aug 2007 11:18:00 -0000 [thread overview] Message-ID: <20070829111848.19132.qmail@sourceware.org> (raw) In-Reply-To: <bug-32758-10129@http.gcc.gnu.org/bugzilla/> ------- Comment #21 from jakub at gcc dot gnu dot org 2007-08-29 11:18 ------- The major difference between say i?86 or x86_64 and ppc here is that on the former two the hard frame pointer is actually visibly, not just artificially, used when restoring the stack pointer. ppc restores the stack pointer from the memory value stwux instruction creates and so it doesn't visibly use hard frame pointer. While rest_of_handle_ud_dce calls mark_artificial_uses and that way marks all the instructions that define the artificial registers. On the other side, dce_process_block from fast_dce will not mark the instructions that define the artificial uses, instead or all the artificial register bits into local_live bitmap. 31 (ppc hard frame pointer) is an artificial use, so dce_process_block sets bit 31 in local_live during initialization (i.e. at the end of the basic block). But then goes through insns backwards and finds (insn 50 49 51 2 l2.c:9 (set (reg/f:DI 31 31) (mem/c:DI (plus:DI (reg/f:DI 1 1) (const_int -8 [0xfffffffffffffff8])) [5 S8 A8])) -1 (nil)) which restores the saved hard frame pointer in the epilogue. This definition clears bit 31 from the local_live bitmap and as everything is one basic block, there is nothing else which will prevent removing the hard frame pointer initialization. df_simulate_one_insn_forwards and df_simulate_one_insn_backwards (why we have the former when nothing ever uses it?) both call df_simulate_fixup_sets to fix this up, shouldn't dce_process_block call that too? -- jakub at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |dberlin at gcc dot gnu dot | |org, bonzini at gnu dot org Priority|P3 |P1 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32758
next prev parent reply other threads:[~2007-08-29 11:18 UTC|newest] Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top 2007-07-13 18:27 [Bug java/32758] New: " dir at lanl dot gov 2007-07-15 21:03 ` [Bug java/32758] " pinskia at gcc dot gnu dot org 2007-07-16 12:32 ` dir at lanl dot gov 2007-07-16 12:35 ` dir at lanl dot gov 2007-07-16 12:48 ` dir at lanl dot gov 2007-07-24 14:33 ` tromey at gcc dot gnu dot org 2007-07-25 12:56 ` dir at lanl dot gov 2007-08-03 14:03 ` dir at lanl dot gov 2007-08-06 20:34 ` andreast at gcc dot gnu dot org 2007-08-08 8:48 ` aph at gcc dot gnu dot org 2007-08-14 1:11 ` [Bug middle-end/32758] [4.3 Regression] " pinskia at gcc dot gnu dot org 2007-08-24 21:05 ` andreast at gcc dot gnu dot org 2007-08-26 21:28 ` andreast at gcc dot gnu dot org 2007-08-27 7:57 ` andreast at gcc dot gnu dot org 2007-08-27 7:58 ` andreast at gcc dot gnu dot org 2007-08-28 11:44 ` aph at gcc dot gnu dot org 2007-08-28 12:16 ` rguenth at gcc dot gnu dot org 2007-08-28 18:44 ` andreast at gcc dot gnu dot org 2007-08-28 19:38 ` jakub at gcc dot gnu dot org 2007-08-28 21:01 ` andreast at gcc dot gnu dot org 2007-08-29 8:07 ` jakub at gcc dot gnu dot org 2007-08-29 8:52 ` jakub at gcc dot gnu dot org 2007-08-29 11:18 ` jakub at gcc dot gnu dot org [this message] 2007-08-29 11:41 ` jakub at gcc dot gnu dot org 2007-08-29 11:47 ` paolo dot bonzini at lu dot unisi dot ch 2007-08-29 12:15 ` paolo dot bonzini at lu dot unisi dot ch 2007-08-29 13:26 ` jakub at gcc dot gnu dot org 2007-08-29 13:56 ` jakub at gcc dot gnu dot org 2007-08-29 14:12 ` bonzini at gnu dot org 2007-08-29 14:14 ` bonzini at gnu dot org 2007-08-29 14:16 ` bonzini at gnu dot org 2007-08-29 15:34 ` zadeck at naturalbridge dot com 2007-08-29 20:17 ` andreast at gcc dot gnu dot org 2007-08-30 8:27 ` jakub at gcc dot gnu dot org 2007-08-30 8:43 ` jakub at gcc dot gnu dot org
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20070829111848.19132.qmail@sourceware.org \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=java-prs@gcc.gnu.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).