diff --git a/SOURCES/gcc48-rh1487434.patch b/SOURCES/gcc48-rh1487434.patch
new file mode 100644
index 0000000..5295ce6
--- /dev/null
+++ b/SOURCES/gcc48-rh1487434.patch
@@ -0,0 +1,49 @@
+2016-05-04  Alan Modra  <amodra@gmail.com>
+
+	* config/rs6000/rs6000.c (rs6000_elf_output_toc_section_asm_op):
+	Align .toc.
+
+--- gcc/config/rs6000/rs6000.c
++++ gcc/config/rs6000/rs6000.c
+@@ -31339,8 +31339,8 @@ rs6000_elf_output_toc_section_asm_op (const void *data ATTRIBUTE_UNUSED)
+     {
+       if (!toc_initialized)
+ 	{
+-	  toc_initialized = 1;
+ 	  fprintf (asm_out_file, "%s\n", TOC_SECTION_ASM_OP);
++	  ASM_OUTPUT_ALIGN (asm_out_file, TARGET_64BIT ? 3 : 2);
+ 	  (*targetm.asm_out.internal_label) (asm_out_file, "LCTOC", 0);
+ 	  fprintf (asm_out_file, "\t.tc ");
+ 	  ASM_OUTPUT_INTERNAL_LABEL_PREFIX (asm_out_file, "LCTOC1[TC],");
+@@ -31348,20 +31348,30 @@ rs6000_elf_output_toc_section_asm_op (const void *data ATTRIBUTE_UNUSED)
+ 	  fprintf (asm_out_file, "\n");
+ 
+ 	  fprintf (asm_out_file, "%s\n", MINIMAL_TOC_SECTION_ASM_OP);
++	  ASM_OUTPUT_ALIGN (asm_out_file, TARGET_64BIT ? 3 : 2);
+ 	  ASM_OUTPUT_INTERNAL_LABEL_PREFIX (asm_out_file, "LCTOC1");
+ 	  fprintf (asm_out_file, " = .+32768\n");
++	  toc_initialized = 1;
+ 	}
+       else
+ 	fprintf (asm_out_file, "%s\n", MINIMAL_TOC_SECTION_ASM_OP);
+     }
+   else if ((DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2)
+ 	   && !TARGET_RELOCATABLE)
+-    fprintf (asm_out_file, "%s\n", TOC_SECTION_ASM_OP);
++    {
++      fprintf (asm_out_file, "%s\n", TOC_SECTION_ASM_OP);
++      if (!toc_initialized)
++	{
++	  ASM_OUTPUT_ALIGN (asm_out_file, TARGET_64BIT ? 3 : 2);
++	  toc_initialized = 1;
++	}
++    }
+   else
+     {
+       fprintf (asm_out_file, "%s\n", MINIMAL_TOC_SECTION_ASM_OP);
+       if (!toc_initialized)
+ 	{
++	  ASM_OUTPUT_ALIGN (asm_out_file, TARGET_64BIT ? 3 : 2);
+ 	  ASM_OUTPUT_INTERNAL_LABEL_PREFIX (asm_out_file, "LCTOC1");
+ 	  fprintf (asm_out_file, " = .+32768\n");
+ 	  toc_initialized = 1;
diff --git a/SPECS/gcc.spec b/SPECS/gcc.spec
index af0a0b6..81d4d09 100644
--- a/SPECS/gcc.spec
+++ b/SPECS/gcc.spec
@@ -79,7 +79,7 @@ Name: gcc
 %global gcc_version 4.8.5
 %endif
 Version: 4.8.5
-Release: %{gcc_release}%{?dist}
+Release: %{gcc_release}%{?dist}.1
 %if "%{version}" != "%{gcc_version}"
 %define gcc_provides %{gcc_version}-16%{?dist}
 %endif
@@ -248,6 +248,7 @@ Patch48: gcc48-pr78875.patch
 Patch49: gcc48-rh1402585.patch
 Patch50: gcc48-pr70549.patch
 Patch51: gcc48-rh1457969.patch
+Patch53: gcc48-rh1487434.patch
 
 Patch1000: fastjar-0.97-segfault.patch
 Patch1001: fastjar-0.97-len1.patch
@@ -977,6 +978,7 @@ touch -r %{PATCH27} libstdc++-v3/python/libstdcxx/v6/printers.py
 %patch49 -p0 -b .rh1402585~
 %patch50 -p0 -b .pr70549~
 %patch51 -p0 -b .rh1457969~
+%patch53 -p0 -b .rh1487434~
 
 %if 0%{?_enable_debug_packages}
 cat > split-debuginfo.sh <<\EOF
@@ -3420,6 +3422,9 @@ fi
 %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
 
 %changelog
+* Thu Sep 14 2017 Marek Polacek <polacek@redhat.com> 4.8.5-16.1
+- fix .toc alignment (#1487434)
+
 * Thu Jun  1 2017 Marek Polacek <polacek@redhat.com> 4.8.5-16
 - disable emitting profiling in functions marked with a special
   attribute (#1457969)