diff options
author | Koen Kooi <koen@dominion.thruhere.net> | 2011-03-17 21:41:22 +0100 |
---|---|---|
committer | Koen Kooi <koen@dominion.thruhere.net> | 2011-03-17 21:41:22 +0100 |
commit | c58cc7d3796dcee6e93885c835ed04cb566abeb2 (patch) | |
tree | 3eea4d4ef6a4ef79e0f4e025d7012c1a5cc38835 /meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch | |
parent | eec6ab97f712e06eb52c9f7c99e19ffab3ce9d74 (diff) | |
download | meta-openembedded-contrib-c58cc7d3796dcee6e93885c835ed04cb566abeb2.tar.gz |
move layer into meta-oe in preparation for future splits
As per TSC decision
Signed-off-by: Koen Kooi <koen@dominion.thruhere.net>
Diffstat (limited to 'meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch')
-rw-r--r-- | meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch new file mode 100644 index 0000000000..5e8383a7d9 --- /dev/null +++ b/meta-oe/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99455.patch @@ -0,0 +1,65 @@ +2010-12-21 Chung-Lin Tang <cltang@codesourcery.com> + + Issue #10201 + + Backport from mainline: + + 2010-12-16 Chung-Lin Tang <cltang@codesourcery.com> + + PR target/46883 + gcc/ + * config/arm/arm.md + (zero_extendhisi2 for register input splitter): Change + "register_operand" to "s_register_operand". + (zero_extendqisi2 for register input splitter): Same. + + gcc/testsuite/ + * gcc.target/arm/pr46883.c: New testcase. + +=== modified file 'gcc/config/arm/arm.md' +--- old/gcc/config/arm/arm.md 2011-01-05 11:42:19 +0000 ++++ new/gcc/config/arm/arm.md 2011-01-05 11:52:16 +0000 +@@ -4114,8 +4114,8 @@ + }) + + (define_split +- [(set (match_operand:SI 0 "register_operand" "") +- (zero_extend:SI (match_operand:HI 1 "register_operand" "")))] ++ [(set (match_operand:SI 0 "s_register_operand" "") ++ (zero_extend:SI (match_operand:HI 1 "s_register_operand" "")))] + "!TARGET_THUMB2 && !arm_arch6" + [(set (match_dup 0) (ashift:SI (match_dup 2) (const_int 16))) + (set (match_dup 0) (lshiftrt:SI (match_dup 0) (const_int 16)))] +@@ -4234,8 +4234,8 @@ + }) + + (define_split +- [(set (match_operand:SI 0 "register_operand" "") +- (zero_extend:SI (match_operand:QI 1 "register_operand" "")))] ++ [(set (match_operand:SI 0 "s_register_operand" "") ++ (zero_extend:SI (match_operand:QI 1 "s_register_operand" "")))] + "!arm_arch6" + [(set (match_dup 0) (ashift:SI (match_dup 2) (const_int 24))) + (set (match_dup 0) (lshiftrt:SI (match_dup 0) (const_int 24)))] + +=== added file 'gcc/testsuite/gcc.target/arm/pr46883.c' +--- old/gcc/testsuite/gcc.target/arm/pr46883.c 1970-01-01 00:00:00 +0000 ++++ new/gcc/testsuite/gcc.target/arm/pr46883.c 2011-01-05 11:52:16 +0000 +@@ -0,0 +1,16 @@ ++/* { dg-do compile } */ ++/* { dg-options "-O1 -march=armv5te" } */ ++ ++void bar (unsigned char *q, unsigned short *data16s, int len) ++{ ++ int i; ++ ++ for (i = 0; i < len; i++) ++ { ++ q[2 * i] = ++ (((data16s[i] & 0xFF) << 8) | ((data16s[i] >> 8) & 0xFF)) & 0xFF; ++ q[2 * i + 1] = ++ ((unsigned short) ++ (((data16s[i] & 0xFF) << 8) | ((data16s[i] >> 8) & 0xFF))) >> 8; ++ } ++} + |