diff options
Diffstat (limited to 'toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99388.patch')
-rw-r--r-- | toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99388.patch | 191 |
1 files changed, 0 insertions, 191 deletions
diff --git a/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99388.patch b/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99388.patch deleted file mode 100644 index f603fcadba..0000000000 --- a/toolchain-layer/recipes-devtools/gcc/gcc-4.5/linaro/gcc-4.5-linaro-r99388.patch +++ /dev/null @@ -1,191 +0,0 @@ -2010-09-13 Andrew Stubbs <ams@codesourcery.com> - - Backport from FSF: - - 2010-09-13 Marcus Shawcroft <marcus.shawcroft@arm.com> - - * config/arm/arm.md: (define_attr "conds"): Update comment. - * config/arm/sync.md (arm_sync_compare_and_swapsi): Change - conds attribute to clob. - (arm_sync_compare_and_swapsi): Likewise. - (arm_sync_compare_and_swap<mode>): Likewise. - (arm_sync_lock_test_and_setsi): Likewise. - (arm_sync_lock_test_and_set<mode>): Likewise. - (arm_sync_new_<sync_optab>si): Likewise. - (arm_sync_new_nandsi): Likewise. - (arm_sync_new_<sync_optab><mode>): Likewise. - (arm_sync_new_nand<mode>): Likewise. - (arm_sync_old_<sync_optab>si): Likewise. - (arm_sync_old_nandsi): Likewise. - (arm_sync_old_<sync_optab><mode>): Likewise. - (arm_sync_old_nand<mode>): Likewise. - - 2010-09-13 Marcus Shawcroft <marcus.shawcroft@arm.com> - - * gcc.target/arm/sync-1.c: New. - - 2010-09-10 Andrew Stubbs <ams@codesourcery.com> - - gcc/ - -=== modified file 'gcc/config/arm/arm.md' ---- old/gcc/config/arm/arm.md 2010-09-09 15:03:00 +0000 -+++ new/gcc/config/arm/arm.md 2010-09-13 15:39:11 +0000 -@@ -352,10 +352,11 @@ - ; CLOB means that the condition codes are altered in an undefined manner, if - ; they are altered at all - ; --; UNCONDITIONAL means the instions can not be conditionally executed. -+; UNCONDITIONAL means the instruction can not be conditionally executed and -+; that the instruction does not use or alter the condition codes. - ; --; NOCOND means that the condition codes are neither altered nor affect the --; output of this insn -+; NOCOND means that the instruction does not use or alter the condition -+; codes but can be converted into a conditionally exectuted instruction. - - (define_attr "conds" "use,set,clob,unconditional,nocond" - (if_then_else (eq_attr "type" "call") - -=== modified file 'gcc/config/arm/sync.md' ---- old/gcc/config/arm/sync.md 2010-09-09 15:18:16 +0000 -+++ new/gcc/config/arm/sync.md 2010-09-13 15:39:11 +0000 -@@ -300,7 +300,7 @@ - (set_attr "sync_new_value" "3") - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "4") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_compare_and_swap<mode>" -@@ -327,7 +327,7 @@ - (set_attr "sync_new_value" "3") - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "4") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_lock_test_and_setsi" -@@ -348,7 +348,7 @@ - (set_attr "sync_new_value" "2") - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_lock_test_and_set<mode>" -@@ -369,7 +369,7 @@ - (set_attr "sync_new_value" "2") - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_new_<sync_optab>si" -@@ -394,7 +394,7 @@ - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") - (set_attr "sync_op" "<sync_optab>") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_new_nandsi" -@@ -419,7 +419,7 @@ - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") - (set_attr "sync_op" "nand") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_new_<sync_optab><mode>" -@@ -445,7 +445,7 @@ - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") - (set_attr "sync_op" "<sync_optab>") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_new_nand<mode>" -@@ -472,7 +472,7 @@ - (set_attr "sync_t1" "0") - (set_attr "sync_t2" "3") - (set_attr "sync_op" "nand") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_old_<sync_optab>si" -@@ -498,7 +498,7 @@ - (set_attr "sync_t1" "3") - (set_attr "sync_t2" "4") - (set_attr "sync_op" "<sync_optab>") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_old_nandsi" -@@ -524,7 +524,7 @@ - (set_attr "sync_t1" "3") - (set_attr "sync_t2" "4") - (set_attr "sync_op" "nand") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_old_<sync_optab><mode>" -@@ -551,7 +551,7 @@ - (set_attr "sync_t1" "3") - (set_attr "sync_t2" "4") - (set_attr "sync_op" "<sync_optab>") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "arm_sync_old_nand<mode>" -@@ -578,7 +578,7 @@ - (set_attr "sync_t1" "3") - (set_attr "sync_t2" "4") - (set_attr "sync_op" "nand") -- (set_attr "conds" "nocond") -+ (set_attr "conds" "clob") - (set_attr "predicable" "no")]) - - (define_insn "*memory_barrier" - -=== added file 'gcc/testsuite/gcc.target/arm/sync-1.c' ---- old/gcc/testsuite/gcc.target/arm/sync-1.c 1970-01-01 00:00:00 +0000 -+++ new/gcc/testsuite/gcc.target/arm/sync-1.c 2010-09-13 15:39:11 +0000 -@@ -0,0 +1,25 @@ -+/* { dg-do run } */ -+/* { dg-options "-O2 -march=armv7-a" } */ -+ -+volatile int mem; -+ -+int -+bar (int x, int y) -+{ -+ if (x) -+ __sync_fetch_and_add(&mem, y); -+ return 0; -+} -+ -+extern void abort (void); -+ -+int -+main (int argc, char *argv[]) -+{ -+ mem = 0; -+ bar (0, 1); -+ bar (1, 1); -+ if (mem != 1) -+ abort (); -+ return 0; -+} - |