public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated
@ 2012-08-09 19:41 mans at mansr dot com
  2012-08-10 14:58 ` [Bug target/54212] " ramana at gcc dot gnu.org
                   ` (5 more replies)
  0 siblings, 6 replies; 7+ messages in thread
From: mans at mansr dot com @ 2012-08-09 19:41 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

             Bug #: 54212
           Summary: ARM: invalid instruction (vdupeq.32) generated
    Classification: Unclassified
           Product: gcc
           Version: 4.7.1
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: mans@mansr.com


Created attachment 27967
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27967
Test case

Compiling the attached file produces the invalid instruction vdupeq.32 (vdup is
not conditional).  The error occurs only when all of -mcpu=cortex-a9 -mfpu=neon
-mfloat-abi=hard -O3 -ffast-math are specified.  Targeting other cores or
generic armv7-a does not exhibit the problem.


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
@ 2012-08-10 14:58 ` ramana at gcc dot gnu.org
  2012-08-10 14:59 ` ramana at gcc dot gnu.org
                   ` (4 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-10 14:58 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |arm-*-*eabi
             Status|UNCONFIRMED                 |ASSIGNED
   Last reconfirmed|                            |2012-08-10
                 CC|                            |ramana at gcc dot gnu.org
     Ever Confirmed|0                           |1

--- Comment #1 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-08-10 14:57:32 UTC ---
shows up on 4.7 branch but latent on trunk.This has been marked predicable ever
since the port was submitted and this is just broken.

None of the Neon instructions are conditional in ARM state, these instructions
are deprecated in IT blocks as per section  the latest edition of the ARM-ARM
(DDI0406C_B_arm_architecture_reference_manual.pdf)


regards
Ramana


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
  2012-08-10 14:58 ` [Bug target/54212] " ramana at gcc dot gnu.org
@ 2012-08-10 14:59 ` ramana at gcc dot gnu.org
  2012-08-14 14:56 ` ramana at gcc dot gnu.org
                   ` (3 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-10 14:59 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

--- Comment #2 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-08-10 14:58:54 UTC ---
(In reply to comment #1)
> shows up on 4.7 branch but latent on trunk.This has been marked predicable ever
> since the port was submitted and this is just broken.
> 
> None of the Neon instructions are conditional in ARM state, these instructions
> are deprecated in IT blocks as per section  the latest edition of the ARM-ARM

Section 8.3 

> (DDI0406C_B_arm_architecture_reference_manual.pdf)
> 
> 
> regards
> Ramana


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
  2012-08-10 14:58 ` [Bug target/54212] " ramana at gcc dot gnu.org
  2012-08-10 14:59 ` ramana at gcc dot gnu.org
@ 2012-08-14 14:56 ` ramana at gcc dot gnu.org
  2012-08-15  7:57 ` ramana at gcc dot gnu.org
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-14 14:56 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
   Target Milestone|---                         |4.7.2


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
                   ` (2 preceding siblings ...)
  2012-08-14 14:56 ` ramana at gcc dot gnu.org
@ 2012-08-15  7:57 ` ramana at gcc dot gnu.org
  2012-08-20 10:19 ` ramana at gcc dot gnu.org
  2012-08-20 14:58 ` ramana at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-15  7:57 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

--- Comment #3 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-08-15 07:56:48 UTC ---
Author: ramana
Date: Wed Aug 15 07:56:41 2012
New Revision: 190407

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190407
Log:
Fix PR target/54212

2012-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

    PR target/54212
    * config/arm/neon.md (vec_set<mode>_internal VD,VQ): Do not
    mark as predicable. Adjust asm template.
    (vec_setv2di_internal): Likewise.
    (vec_extract<mode> VD, VQ): Likewise.
    (vec_extractv2di): Likewise.
    (neon_vget_lane<mode>_sext_internal VD, VQ): Likewise.
    (neon_vset_lane<mode>_sext_internal VD, VQ): Likewise.
    (neon_vdup_n<mode> VX, V32): Likewise.
    (neon_vdup_nv2di): Likewise.



Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/arm/neon.md


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
                   ` (3 preceding siblings ...)
  2012-08-15  7:57 ` ramana at gcc dot gnu.org
@ 2012-08-20 10:19 ` ramana at gcc dot gnu.org
  2012-08-20 14:58 ` ramana at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-20 10:19 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

--- Comment #4 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-08-20 10:18:41 UTC ---
Author: ramana
Date: Mon Aug 20 10:18:36 2012
New Revision: 190527

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=190527
Log:
Fix PR target/54212

2012-08-20  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

    Backport from mainline.
    2012-08-15  Ramana Radhakrishnan  <ramana.radhakrishnan@linaro.org>

    PR target/54212
    * config/arm/neon.md (vec_set<mode>_internal VD,VQ): Do not
    mark as predicable. Adjust asm template.
    (vec_setv2di_internal): Likewise.
    (vec_extract<mode> VD, VQ): Likewise.
    (vec_extractv2di): Likewise.
    (neon_vget_lane<mode>_sext_internal VD, VQ): Likewise.
    (neon_vset_lane<mode>_sext_internal VD, VQ): Likewise.
    (neon_vdup_n<mode> VX, V32): Likewise.
    (neon_vdup_nv2di): Likewise.



Modified:
    branches/gcc-4_7-branch/   (props changed)
    branches/gcc-4_7-branch/gcc/ChangeLog
    branches/gcc-4_7-branch/gcc/config/arm/neon.md

Propchange: branches/gcc-4_7-branch/
            ('svn:mergeinfo' modified)


^ permalink raw reply	[flat|nested] 7+ messages in thread

* [Bug target/54212] ARM: invalid instruction (vdupeq.32) generated
  2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
                   ` (4 preceding siblings ...)
  2012-08-20 10:19 ` ramana at gcc dot gnu.org
@ 2012-08-20 14:58 ` ramana at gcc dot gnu.org
  5 siblings, 0 replies; 7+ messages in thread
From: ramana at gcc dot gnu.org @ 2012-08-20 14:58 UTC (permalink / raw)
  To: gcc-bugs

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54212

Ramana Radhakrishnan <ramana at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED

--- Comment #5 from Ramana Radhakrishnan <ramana at gcc dot gnu.org> 2012-08-20 14:58:13 UTC ---
Now fixed.


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-08-20 14:58 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-09 19:41 [Bug target/54212] New: ARM: invalid instruction (vdupeq.32) generated mans at mansr dot com
2012-08-10 14:58 ` [Bug target/54212] " ramana at gcc dot gnu.org
2012-08-10 14:59 ` ramana at gcc dot gnu.org
2012-08-14 14:56 ` ramana at gcc dot gnu.org
2012-08-15  7:57 ` ramana at gcc dot gnu.org
2012-08-20 10:19 ` ramana at gcc dot gnu.org
2012-08-20 14:58 ` ramana at gcc dot gnu.org

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).