public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
From: "jakub at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org> To: gcc-bugs@gcc.gnu.org Subject: [Bug rtl-optimization/55829] [4.8 Regression] ICE: in curr_insn_transform, at lra-constraints.c:3069 with -msse3 Date: Tue, 08 Jan 2013 09:58:00 -0000 [thread overview] Message-ID: <bug-55829-4-oss6lMZqDO@http.gcc.gnu.org/bugzilla/> (raw) In-Reply-To: <bug-55829-4@http.gcc.gnu.org/bugzilla/> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55829 --- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-01-08 09:58:05 UTC --- Created attachment 29103 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=29103 gcc48-pr55829.patch Yeah, comparing the vec_dupv2df and *vec_concatv2df patterns shows that for the former we accept for sse3 but not avx x <- 0, x <- x and x <- m, while for the latter only x <- 0, x and x <- m, 1 and not x <- x, 1, when movddup has 2 different register arguments. With this change it doesn't ICE anymore, even when it actually doesn't emit that form of movddup (the vec_concat of 2x (reg:DF 62) pseudo where (reg:DF 62) is assigned r12 (it is used in the following loop which contains calls), it is LRA reloaded into two stores of r12 into mem, once loaded into xmm1 and used from mem, i.e. for whatever reason the x <- 0, m alternative is chosen, but postreload then turns it into movddup with both arguments xmm1 (x <- 0, 0). I think this patch can be useful and does give the RA more freedom, but it is unclear whether it doesn't make some LRA bug latent. Vlad?
next prev parent reply other threads:[~2013-01-08 9:58 UTC|newest] Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2012-12-30 15:17 [Bug rtl-optimization/55829] New: " zsojka at seznam dot cz 2012-12-31 10:29 ` [Bug rtl-optimization/55829] " pinskia at gcc dot gnu.org 2013-01-04 3:39 ` pinskia at gcc dot gnu.org 2013-01-07 15:45 ` rguenth at gcc dot gnu.org 2013-01-08 9:58 ` jakub at gcc dot gnu.org [this message] 2013-01-08 10:03 ` jakub at gcc dot gnu.org 2013-01-08 16:10 ` vmakarov at redhat dot com 2013-01-08 16:28 ` ubizjak at gmail dot com 2013-01-09 16:33 ` ubizjak at gmail dot com 2013-01-09 17:12 ` ubizjak at gmail dot com 2013-01-09 17:50 ` jakub at gcc dot gnu.org 2013-01-09 17:52 ` ubizjak at gmail dot com 2013-01-09 18:16 ` vmakarov at gcc dot gnu.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=bug-55829-4-oss6lMZqDO@http.gcc.gnu.org/bugzilla/ \ --to=gcc-bugzilla@gcc.gnu.org \ --cc=gcc-bugs@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).