public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: pinskia@physics.uc.edu
To: gcc-gnats@gcc.gnu.org
Cc: spatel@apple.com, aldyh@redhat.com, kkhoo@apple.com
Subject: target/10177: VRsave mask wrong
Date: Fri, 21 Mar 2003 02:16:00 -0000	[thread overview]
Message-ID: <20030321020823.21456.qmail@sources.redhat.com> (raw)


>Number:         10177
>Category:       target
>Synopsis:       VRsave mask wrong
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Fri Mar 21 02:16:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Andrew Pinski
>Release:        gcc version 3.4 20030320 (experimental)
>Organization:
>Environment:
powerpc-apple-darwin6.4
>Description:
The VRsave mask generated for the attached code should 0x80000000 (register v0 is the only vector register used).
int f(int a, int b) {
        if (a<b) {
                vector signed int v1;
                vec_ste(v1, 0, &a);
                return a;
        }
        else {
                return a;
        }
}

instead I get this:
_f:
        mfspr   r5,VRsave
        oris    r2,r5,0xdfff
        stw     r5,0xfff8(r1)
        ori     r0,r2,0xf000
        mtspr   VRsave,r0
        cmpw    r3,r4
        or      r0,r3,r3
        stw     r3,0x18(r1)
        bge     0x34
        li      r4,0x0
        addi    r3,r1,0x18
        stvewx  v0,r4,r3
        lwz     r0,0x18(r1)
        or      r3,r0,r0
        lwz     r6,0xfff8(r1)
        mtspr   VRsave,r6
        blr
>How-To-Repeat:
gcc -O3 -maltivec test.c -include altivec.h -c -Wa,-force_cpusubtype_ALL -v
>Fix:
Do not know.
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="test.c"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="test.c"

aW50IGYoaW50IGEsIGludCBiKSB7CiAgICAgICAgaWYgKGE8YikgewogICAgICAgICAgICAgICAg
dmVjdG9yIHNpZ25lZCBpbnQgdjE7CiAgICAgICAgICAgICAgICB2ZWNfc3RlKHYxLCAwLCAmYSk7
CiAgICAgICAgICAgICAgICByZXR1cm4gYTsKICAgICAgICB9CiAgICAgICAgZWxzZSB7CiAgICAg
ICAgICAgICAgICByZXR1cm4gYTsKICAgICAgICB9Cn0K


             reply	other threads:[~2003-03-21  2:16 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-21  2:16 pinskia [this message]
2003-03-22  3:26 Segher Boessenkool
2003-03-27 19:59 dje
2003-03-31 18:13 Aldy Hernandez
2003-03-31 20:06 dje

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=20030321020823.21456.qmail@sources.redhat.com \
    --to=pinskia@physics.uc.edu \
    --cc=aldyh@redhat.com \
    --cc=gcc-gnats@gcc.gnu.org \
    --cc=kkhoo@apple.com \
    --cc=spatel@apple.com \
    /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: link
Be 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).