diff options
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch')
| -rw-r--r-- | meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch | 59 |
1 files changed, 23 insertions, 36 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch index 74f139d33a..2cf2741ba6 100644 --- a/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch +++ b/meta-oe/recipes-devtools/gcc/gcc-4.6/linaro/gcc-4.6-linaro-r106842.patch | |||
| @@ -48,8 +48,10 @@ | |||
| 48 | Return true for NEON. | 48 | Return true for NEON. |
| 49 | 49 | ||
| 50 | === modified file 'gcc/testsuite/gcc.dg/vect/pr30858.c' | 50 | === modified file 'gcc/testsuite/gcc.dg/vect/pr30858.c' |
| 51 | --- old/gcc/testsuite/gcc.dg/vect/pr30858.c 2007-02-22 08:16:18 +0000 | 51 | Index: gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/pr30858.c |
| 52 | +++ new/gcc/testsuite/gcc.dg/vect/pr30858.c 2011-11-20 09:11:09 +0000 | 52 | =================================================================== |
| 53 | --- gcc-4_6-branch.orig/gcc/testsuite/gcc.dg/vect/pr30858.c 2012-01-04 15:33:52.000000000 -0800 | ||
| 54 | +++ gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/pr30858.c 2012-03-05 16:23:47.748983031 -0800 | ||
| 53 | @@ -11,5 +11,6 @@ | 55 | @@ -11,5 +11,6 @@ |
| 54 | } | 56 | } |
| 55 | 57 | ||
| @@ -58,10 +60,10 @@ | |||
| 58 | +/* { dg-final { scan-tree-dump-times "Unknown def-use cycle pattern." 1 "vect" { xfail vect_multiple_sizes } } } */ | 60 | +/* { dg-final { scan-tree-dump-times "Unknown def-use cycle pattern." 1 "vect" { xfail vect_multiple_sizes } } } */ |
| 59 | +/* { dg-final { scan-tree-dump-times "Unknown def-use cycle pattern." 2 "vect" { target vect_multiple_sizes } } } */ | 61 | +/* { dg-final { scan-tree-dump-times "Unknown def-use cycle pattern." 2 "vect" { target vect_multiple_sizes } } } */ |
| 60 | /* { dg-final { cleanup-tree-dump "vect" } } */ | 62 | /* { dg-final { cleanup-tree-dump "vect" } } */ |
| 61 | 63 | Index: gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-cond-8a.c | |
| 62 | === added file 'gcc/testsuite/gcc.dg/vect/vect-cond-8a.c' | 64 | =================================================================== |
| 63 | --- old/gcc/testsuite/gcc.dg/vect/vect-cond-8a.c 1970-01-01 00:00:00 +0000 | 65 | --- /dev/null 1970-01-01 00:00:00.000000000 +0000 |
| 64 | +++ new/gcc/testsuite/gcc.dg/vect/vect-cond-8a.c 2011-11-20 09:11:09 +0000 | 66 | +++ gcc-4_6-branch/gcc/testsuite/gcc.dg/vect/vect-cond-8a.c 2012-03-05 16:23:47.748983031 -0800 |
| 65 | @@ -0,0 +1,75 @@ | 67 | @@ -0,0 +1,75 @@ |
| 66 | +/* { dg-require-effective-target vect_condition } */ | 68 | +/* { dg-require-effective-target vect_condition } */ |
| 67 | + | 69 | + |
| @@ -138,24 +140,10 @@ | |||
| 138 | + | 140 | + |
| 139 | +/* { dg-final { scan-tree-dump-times "note: vectorized 1 loops" 3 "vect" } } */ | 141 | +/* { dg-final { scan-tree-dump-times "note: vectorized 1 loops" 3 "vect" } } */ |
| 140 | +/* { dg-final { cleanup-tree-dump "vect" } } */ | 142 | +/* { dg-final { cleanup-tree-dump "vect" } } */ |
| 141 | 143 | Index: gcc-4_6-branch/gcc/tree-vect-patterns.c | |
| 142 | === modified file 'gcc/testsuite/lib/target-supports.exp' | 144 | =================================================================== |
| 143 | --- old/gcc/testsuite/lib/target-supports.exp 2011-11-21 01:45:54 +0000 | 145 | --- gcc-4_6-branch.orig/gcc/tree-vect-patterns.c 2012-03-05 16:23:10.000000000 -0800 |
| 144 | +++ new/gcc/testsuite/lib/target-supports.exp 2011-11-22 16:52:23 +0000 | 146 | +++ gcc-4_6-branch/gcc/tree-vect-patterns.c 2012-03-05 16:23:47.748983031 -0800 |
| 145 | @@ -3150,7 +3150,8 @@ | ||
| 146 | || [istarget ia64-*-*] | ||
| 147 | || [istarget i?86-*-*] | ||
| 148 | || [istarget spu-*-*] | ||
| 149 | - || [istarget x86_64-*-*] } { | ||
| 150 | + || [istarget x86_64-*-*] | ||
| 151 | + || ([istarget arm*-*-*] && [check_effective_target_arm_neon_ok]) } { | ||
| 152 | set et_vect_cond_saved 1 | ||
| 153 | } | ||
| 154 | } | ||
| 155 | |||
| 156 | === modified file 'gcc/tree-vect-patterns.c' | ||
| 157 | --- old/gcc/tree-vect-patterns.c 2011-10-23 13:33:07 +0000 | ||
| 158 | +++ new/gcc/tree-vect-patterns.c 2011-11-20 09:11:09 +0000 | ||
| 159 | @@ -50,13 +50,16 @@ | 147 | @@ -50,13 +50,16 @@ |
| 160 | tree *); | 148 | tree *); |
| 161 | static gimple vect_recog_widen_shift_pattern (VEC (gimple, heap) **, | 149 | static gimple vect_recog_widen_shift_pattern (VEC (gimple, heap) **, |
| @@ -299,14 +287,14 @@ | |||
| 299 | def_stmt = STMT_VINFO_PATTERN_DEF_STMT (pattern_stmt_info); | 287 | def_stmt = STMT_VINFO_PATTERN_DEF_STMT (pattern_stmt_info); |
| 300 | - set_vinfo_for_stmt (def_stmt, | 288 | - set_vinfo_for_stmt (def_stmt, |
| 301 | - new_stmt_vec_info (def_stmt, loop_vinfo, NULL)); | 289 | - new_stmt_vec_info (def_stmt, loop_vinfo, NULL)); |
| 302 | + def_stmt_info = vinfo_for_stmt (def_stmt); | 290 | - gimple_set_bb (def_stmt, gimple_bb (orig_stmt)); |
| 291 | def_stmt_info = vinfo_for_stmt (def_stmt); | ||
| 303 | + if (def_stmt_info == NULL) | 292 | + if (def_stmt_info == NULL) |
| 304 | + { | 293 | + { |
| 305 | + def_stmt_info = new_stmt_vec_info (def_stmt, loop_vinfo, NULL); | 294 | + def_stmt_info = new_stmt_vec_info (def_stmt, loop_vinfo, NULL); |
| 306 | + set_vinfo_for_stmt (def_stmt, def_stmt_info); | 295 | + set_vinfo_for_stmt (def_stmt, def_stmt_info); |
| 307 | + } | 296 | + } |
| 308 | gimple_set_bb (def_stmt, gimple_bb (orig_stmt)); | 297 | + gimple_set_bb (def_stmt, gimple_bb (orig_stmt)); |
| 309 | - def_stmt_info = vinfo_for_stmt (def_stmt); | ||
| 310 | STMT_VINFO_RELATED_STMT (def_stmt_info) = orig_stmt; | 298 | STMT_VINFO_RELATED_STMT (def_stmt_info) = orig_stmt; |
| 311 | STMT_VINFO_DEF_TYPE (def_stmt_info) | 299 | STMT_VINFO_DEF_TYPE (def_stmt_info) |
| 312 | = STMT_VINFO_DEF_TYPE (orig_stmt_info); | 300 | = STMT_VINFO_DEF_TYPE (orig_stmt_info); |
| @@ -316,10 +304,10 @@ | |||
| 316 | } | 304 | } |
| 317 | } | 305 | } |
| 318 | 306 | ||
| 319 | 307 | Index: gcc-4_6-branch/gcc/tree-vect-stmts.c | |
| 320 | === modified file 'gcc/tree-vect-stmts.c' | 308 | =================================================================== |
| 321 | --- old/gcc/tree-vect-stmts.c 2011-11-14 11:38:08 +0000 | 309 | --- gcc-4_6-branch.orig/gcc/tree-vect-stmts.c 2012-03-05 16:23:11.000000000 -0800 |
| 322 | +++ new/gcc/tree-vect-stmts.c 2011-11-22 16:52:23 +0000 | 310 | +++ gcc-4_6-branch/gcc/tree-vect-stmts.c 2012-03-05 16:23:47.748983031 -0800 |
| 323 | @@ -655,20 +655,40 @@ | 311 | @@ -655,20 +655,40 @@ |
| 324 | tree rhs = gimple_assign_rhs1 (stmt); | 312 | tree rhs = gimple_assign_rhs1 (stmt); |
| 325 | unsigned int op_num; | 313 | unsigned int op_num; |
| @@ -372,10 +360,10 @@ | |||
| 372 | break; | 360 | break; |
| 373 | 361 | ||
| 374 | case GIMPLE_BINARY_RHS: | 362 | case GIMPLE_BINARY_RHS: |
| 375 | 363 | Index: gcc-4_6-branch/gcc/tree-vectorizer.h | |
| 376 | === modified file 'gcc/tree-vectorizer.h' | 364 | =================================================================== |
| 377 | --- old/gcc/tree-vectorizer.h 2011-11-14 11:38:08 +0000 | 365 | --- gcc-4_6-branch.orig/gcc/tree-vectorizer.h 2012-03-05 16:23:11.000000000 -0800 |
| 378 | +++ new/gcc/tree-vectorizer.h 2011-11-22 16:52:23 +0000 | 366 | +++ gcc-4_6-branch/gcc/tree-vectorizer.h 2012-03-05 16:23:47.748983031 -0800 |
| 379 | @@ -917,7 +917,7 @@ | 367 | @@ -917,7 +917,7 @@ |
| 380 | Additional pattern recognition functions can (and will) be added | 368 | Additional pattern recognition functions can (and will) be added |
| 381 | in the future. */ | 369 | in the future. */ |
| @@ -385,4 +373,3 @@ | |||
| 385 | void vect_pattern_recog (loop_vec_info); | 373 | void vect_pattern_recog (loop_vec_info); |
| 386 | 374 | ||
| 387 | /* In tree-vectorizer.c. */ | 375 | /* In tree-vectorizer.c. */ |
| 388 | |||
