This file is indexed.

/usr/src/gcc-5/debian/patches/pr68273.diff is in gcc-5-source 5.5.0-12ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
2016-08-09  Richard Biener  <rguenther@suse.de>

	PR ipa/68273
	* ipa-prop.c (ipa_modify_formal_parameters): Build
	parameter types with natural alignment also for the
	over-aligned case.

2016-02-08  Richard Biener  <rguenther@suse.de>
	Jeff Law  <law@redhat.com>

	PR target/68273
	* tree-ssanames.c (make_ssa_name_fn): Always use unqualified
	types for anonymous SSA names.

Index: b/src/gcc/ipa-prop.c
===================================================================
--- a/src/gcc/ipa-prop.c
+++ b/src/gcc/ipa-prop.c
@@ -3806,7 +3806,7 @@ ipa_modify_formal_parameters (tree fndec
 	      if (is_gimple_reg_type (ptype))
 		{
 		  unsigned malign = GET_MODE_ALIGNMENT (TYPE_MODE (ptype));
-		  if (TYPE_ALIGN (ptype) < malign)
+		  if (TYPE_ALIGN (ptype) != malign)
 		    ptype = build_aligned_type (ptype, malign);
 		}
 	    }
Index: b/src/gcc/testsuite/gcc.target/mips/pr68273.c
===================================================================
--- /dev/null
+++ b/src/gcc/testsuite/gcc.target/mips/pr68273.c
@@ -0,0 +1,79 @@
+/* { dg-do compile } */
+/* { dg-options "-w -fdump-rtl-expand" } */
+/* { dg-skip-if "" { *-*-* }  { } { "-O2" } } */
+
+extern char errbuf[];
+typedef struct Symbol
+{
+  char *name;
+}
+Symbol;
+typedef struct Tnode
+{
+}
+Tnode;
+typedef union Value
+{
+  long long i;
+}
+Value;
+typedef struct Entry
+{
+}
+Entry;
+typedef struct Table
+{
+}
+Table;
+typedef struct Node
+{
+  Tnode *typ;
+  int sto;
+  Value val;
+}
+Node;
+struct Scope
+{
+  Table *table;
+} *sp;
+static Node op (Node);
+Entry *p, *q;
+union YYSTYPE
+{
+  Symbol *sym;
+  Node rec;
+};
+typedef union YYSTYPE YYSTYPE;
+typedef short int yytype_int16;
+
+int
+yyparse (void)
+{
+  YYSTYPE yyval;
+  int yyn;
+  YYSTYPE *yyvsp;
+  while (1)
+    {
+      if (yyn == 34)
+	{
+	  if ((yyvsp[-1].rec).sto & 0x10)
+	    sprintf (errbuf, "invalid typedef qualifier for '%s'",
+		     (yyvsp[0].sym)->name);
+	  p = enter (sp->table, (yyvsp[0].sym));
+	}
+      else
+	op ((yyvsp[0].rec));
+      *++yyvsp = yyval;
+    }
+}
+
+static Node
+op (Node q)
+{
+  integer (q.typ);
+  mgtype (q.typ);
+}
+
+
+/* { dg-final { scan-rtl-dump-times "\\\(set \\\(reg:SI 5 \\\$5\\\)" 2 "expand" } }  */
+/* { dg-final { scan-rtl-dump-times "\\\(set \\\(reg:SI 6 \\\$6\\\)" 1 "expand" } }  */
Index: b/src/gcc/tree-ssanames.c
===================================================================
--- a/src/gcc/tree-ssanames.c
+++ b/src/gcc/tree-ssanames.c
@@ -173,7 +173,7 @@ make_ssa_name_fn (struct function *fn, t
 
   if (TYPE_P (var))
     {
-      TREE_TYPE (t) = var;
+      TREE_TYPE (t) = TYPE_MAIN_VARIANT (var);
       SET_SSA_NAME_VAR_OR_IDENTIFIER (t, NULL_TREE);
     }
   else