From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25396 invoked by alias); 5 Jan 2012 00:34:36 -0000 Received: (qmail 25037 invoked by uid 22791); 5 Jan 2012 00:34:35 -0000 X-SWARE-Spam-Status: No, hits=-2.9 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00 X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 05 Jan 2012 00:34:21 +0000 From: "rth at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/51743] [ia64] Many gcc.dg/torture/vshuf*.c tests FAIL with -O2 -mbig-endian Date: Thu, 05 Jan 2012 00:34:00 -0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: rth at gcc dot gnu.org X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2012-01/txt/msg00461.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51743 --- Comment #5 from Richard Henderson 2012-01-05 00:31:35 UTC --- (In reply to comment #3) > These tests just shuffle bytes around, so I was under impression that the > functionality is isolated from OS. And Hello world executes correctly when > compiled with -mbig-endian. Hello world only manipulates pointers and spends 99% of its time in libc. Shuffling bytes around largely depends on how and what you do with it. Try the more obvious int main() { union { int i; char c[4]; } u; u.i = 0x01020304; printf("%d\n", u.c[0]); return 0; } to convince yourself we aren't actually running in big-endian mode. (In reply to comment #4) > Hm, should we then reject this switch on linux? We could probably remove it entirely and let it be controlled by the OS config headers and get better code within gcc itself.