-Index: gcc/DEV-PHASE
+Index: libgcc/ChangeLog
===================================================================
---- gcc/DEV-PHASE (.../tags/gcc_4_7_3_release) (wersja 197768)
-+++ gcc/DEV-PHASE (.../branches/gcc-4_7-branch) (wersja 197768)
-@@ -0,0 +1 @@
-+prerelease
-Index: gcc/ChangeLog
-===================================================================
---- gcc/ChangeLog (.../tags/gcc_4_7_3_release) (wersja 197768)
-+++ gcc/ChangeLog (.../branches/gcc-4_7-branch) (wersja 197768)
-@@ -1,3 +1,8 @@
-+2013-04-11 Richard Biener <rguenther@suse.de>
+--- libgcc/ChangeLog (.../tags/gcc_4_7_3_release) (revision 197943)
++++ libgcc/ChangeLog (.../branches/gcc-4_7-branch) (revision 197943)
+@@ -1,3 +1,10 @@
++2013-04-11 Julian Brown <julian@codesourcery.com>
+
-+ * BASE-VER: Set to 4.7.4.
-+ * DEV-PHASE: Set to prerelease.
++ * config/arm/linux-atomic.c (SUBWORD_SYNC_OP, SUBWORD_VAL_CAS)
++ (SUBWORD_TEST_AND_SET): Use signed char/short types instead of
++ unsigned char/unsigned short.
++ (__sync_val_compare_and_swap_{1,2}): Handle signed argument.
+
2013-04-11 Release Manager
* GCC 4.7.3 released.
-Index: gcc/BASE-VER
+Index: libgcc/config/arm/linux-atomic.c
+===================================================================
+--- libgcc/config/arm/linux-atomic.c (.../tags/gcc_4_7_3_release) (revision 197943)
++++ libgcc/config/arm/linux-atomic.c (.../branches/gcc-4_7-branch) (revision 197943)
+@@ -97,19 +97,19 @@
+ return (RETURN & mask) >> shift; \
+ }
+
+-SUBWORD_SYNC_OP (add, , +, unsigned short, 2, oldval)
+-SUBWORD_SYNC_OP (sub, , -, unsigned short, 2, oldval)
+-SUBWORD_SYNC_OP (or, , |, unsigned short, 2, oldval)
+-SUBWORD_SYNC_OP (and, , &, unsigned short, 2, oldval)
+-SUBWORD_SYNC_OP (xor, , ^, unsigned short, 2, oldval)
+-SUBWORD_SYNC_OP (nand, ~, &, unsigned short, 2, oldval)
++SUBWORD_SYNC_OP (add, , +, short, 2, oldval)
++SUBWORD_SYNC_OP (sub, , -, short, 2, oldval)
++SUBWORD_SYNC_OP (or, , |, short, 2, oldval)
++SUBWORD_SYNC_OP (and, , &, short, 2, oldval)
++SUBWORD_SYNC_OP (xor, , ^, short, 2, oldval)
++SUBWORD_SYNC_OP (nand, ~, &, short, 2, oldval)
+
+-SUBWORD_SYNC_OP (add, , +, unsigned char, 1, oldval)
+-SUBWORD_SYNC_OP (sub, , -, unsigned char, 1, oldval)
+-SUBWORD_SYNC_OP (or, , |, unsigned char, 1, oldval)
+-SUBWORD_SYNC_OP (and, , &, unsigned char, 1, oldval)
+-SUBWORD_SYNC_OP (xor, , ^, unsigned char, 1, oldval)
+-SUBWORD_SYNC_OP (nand, ~, &, unsigned char, 1, oldval)
++SUBWORD_SYNC_OP (add, , +, signed char, 1, oldval)
++SUBWORD_SYNC_OP (sub, , -, signed char, 1, oldval)
++SUBWORD_SYNC_OP (or, , |, signed char, 1, oldval)
++SUBWORD_SYNC_OP (and, , &, signed char, 1, oldval)
++SUBWORD_SYNC_OP (xor, , ^, signed char, 1, oldval)
++SUBWORD_SYNC_OP (nand, ~, &, signed char, 1, oldval)
+
+ #define OP_AND_FETCH_WORD(OP, PFX_OP, INF_OP) \
+ int HIDDEN \
+@@ -132,19 +132,19 @@
+ OP_AND_FETCH_WORD (xor, , ^)
+ OP_AND_FETCH_WORD (nand, ~, &)
+
+-SUBWORD_SYNC_OP (add, , +, unsigned short, 2, newval)
+-SUBWORD_SYNC_OP (sub, , -, unsigned short, 2, newval)
+-SUBWORD_SYNC_OP (or, , |, unsigned short, 2, newval)
+-SUBWORD_SYNC_OP (and, , &, unsigned short, 2, newval)
+-SUBWORD_SYNC_OP (xor, , ^, unsigned short, 2, newval)
+-SUBWORD_SYNC_OP (nand, ~, &, unsigned short, 2, newval)
++SUBWORD_SYNC_OP (add, , +, short, 2, newval)
++SUBWORD_SYNC_OP (sub, , -, short, 2, newval)
++SUBWORD_SYNC_OP (or, , |, short, 2, newval)
++SUBWORD_SYNC_OP (and, , &, short, 2, newval)
++SUBWORD_SYNC_OP (xor, , ^, short, 2, newval)
++SUBWORD_SYNC_OP (nand, ~, &, short, 2, newval)
+
+-SUBWORD_SYNC_OP (add, , +, unsigned char, 1, newval)
+-SUBWORD_SYNC_OP (sub, , -, unsigned char, 1, newval)
+-SUBWORD_SYNC_OP (or, , |, unsigned char, 1, newval)
+-SUBWORD_SYNC_OP (and, , &, unsigned char, 1, newval)
+-SUBWORD_SYNC_OP (xor, , ^, unsigned char, 1, newval)
+-SUBWORD_SYNC_OP (nand, ~, &, unsigned char, 1, newval)
++SUBWORD_SYNC_OP (add, , +, signed char, 1, newval)
++SUBWORD_SYNC_OP (sub, , -, signed char, 1, newval)
++SUBWORD_SYNC_OP (or, , |, signed char, 1, newval)
++SUBWORD_SYNC_OP (and, , &, signed char, 1, newval)
++SUBWORD_SYNC_OP (xor, , ^, signed char, 1, newval)
++SUBWORD_SYNC_OP (nand, ~, &, signed char, 1, newval)
+
+ int HIDDEN
+ __sync_val_compare_and_swap_4 (int *ptr, int oldval, int newval)
+@@ -181,7 +181,7 @@
+ actual_oldval = *wordptr; \
+ \
+ if (__builtin_expect (((actual_oldval & mask) >> shift) != \
+- (unsigned int) oldval, 0)) \
++ ((unsigned int) oldval & MASK_##WIDTH), 0)) \
+ return (actual_oldval & mask) >> shift; \
+ \
+ actual_newval = (actual_oldval & ~mask) \
+@@ -195,8 +195,8 @@
+ } \
+ }
+
+-SUBWORD_VAL_CAS (unsigned short, 2)
+-SUBWORD_VAL_CAS (unsigned char, 1)
++SUBWORD_VAL_CAS (short, 2)
++SUBWORD_VAL_CAS (signed char, 1)
+
+ typedef unsigned char bool;
+
+@@ -217,8 +217,8 @@
+ return (oldval == actual_oldval); \
+ }
+
+-SUBWORD_BOOL_CAS (unsigned short, 2)
+-SUBWORD_BOOL_CAS (unsigned char, 1)
++SUBWORD_BOOL_CAS (short, 2)
++SUBWORD_BOOL_CAS (signed char, 1)
+
+ void HIDDEN
+ __sync_synchronize (void)
+@@ -260,8 +260,8 @@
+ return (oldval & mask) >> shift; \
+ }
+
+-SUBWORD_TEST_AND_SET (unsigned short, 2)
+-SUBWORD_TEST_AND_SET (unsigned char, 1)
++SUBWORD_TEST_AND_SET (short, 2)
++SUBWORD_TEST_AND_SET (signed char, 1)
+
+ #define SYNC_LOCK_RELEASE(TYPE, WIDTH) \
+ void HIDDEN \
+Index: gcc/DATESTAMP
===================================================================
---- gcc/BASE-VER (.../tags/gcc_4_7_3_release) (wersja 197768)
-+++ gcc/BASE-VER (.../branches/gcc-4_7-branch) (wersja 197768)
+--- gcc/DATESTAMP (.../tags/gcc_4_7_3_release) (revision 197943)
++++ gcc/DATESTAMP (.../branches/gcc-4_7-branch) (revision 197943)
@@ -1 +1 @@
--4.7.3
-+4.7.4
+-20130411
++20130413