1.1 --- a/patches/gcc/3.3.1/pr11949-fix.patch Tue Aug 14 19:32:22 2007 +0000
1.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000
1.3 @@ -1,61 +0,0 @@
1.4 -Message-Id: 20030822160024.GA305@ftbfs.org
1.5 -From: Matt Kraai kraai at alumni dot cmu dot edu
1.6 -To: gcc-patches at gcc dot gnu dot org
1.7 -Date: Fri, 22 Aug 2003 09:00:24 -0700
1.8 -Subject: PR 11949
1.9 -
1.10 -Howdy,
1.11 -
1.12 -I've backported the following patch from the mainline to the 3.3
1.13 -branch to fix PR 11949.
1.14 -
1.15 -Bootstrapped and regression tested on powerpc-unknown-linux-gnu.
1.16 -
1.17 -OK to commit?
1.18 -
1.19 - PR c/11949
1.20 - Backport from mainline:
1.21 -
1.22 - 2003-05-05 Aldy Hernandez aldyh@redhat.com
1.23 -
1.24 - * testsuite/gcc.c-torture/compile/simd-6.c: New.
1.25 -
1.26 - * c-typeck.c (digest_init): Handle arrays of vector constants.
1.27 -
1.28 -Index: gcc/c-typeck.c
1.29 -===================================================================
1.30 -RCS file: /cvs/gcc/gcc/gcc/c-typeck.c,v
1.31 -retrieving revision 1.213.2.8
1.32 -diff -3 -c -p -r1.213.2.8 c-typeck.c
1.33 -*** gcc/gcc/c-typeck.c 19 Aug 2003 01:42:35 -0000 1.213.2.8
1.34 ---- gcc/gcc/c-typeck.c 22 Aug 2003 09:24:03 -0000
1.35 -*************** digest_init (type, init, require_constan
1.36 -*** 4765,4772 ****
1.37 - if (code == VECTOR_TYPE
1.38 - && comptypes (TREE_TYPE (inside_init), type)
1.39 - && TREE_CONSTANT (inside_init))
1.40 -! return build_vector (type, TREE_OPERAND (inside_init, 1));
1.41 -!
1.42 -
1.43 - /* Any type can be initialized
1.44 - from an expression of the same type, optionally with braces. */
1.45 ---- 4765,4778 ----
1.46 - if (code == VECTOR_TYPE
1.47 - && comptypes (TREE_TYPE (inside_init), type)
1.48 - && TREE_CONSTANT (inside_init))
1.49 -! {
1.50 -! if (TREE_CODE (inside_init) == VECTOR_CST
1.51 -! && comptypes (TYPE_MAIN_VARIANT (TREE_TYPE (inside_init)),
1.52 -! TYPE_MAIN_VARIANT (type)))
1.53 -! return inside_init;
1.54 -! else
1.55 -! return build_vector (type, CONSTRUCTOR_ELTS (inside_init));
1.56 -! }
1.57 -
1.58 - /* Any type can be initialized
1.59 - from an expression of the same type, optionally with braces. */
1.60 -
1.61 -typedef int __attribute__((mode(V2SI))) vec;
1.62 -
1.63 -vec a[] = {(vec) {1, 2}, {3, 4}};
1.64 -