Propolice for GCC 3.3 based on:
[dragonfly.git] / gnu / usr.bin / cc3 / cc_int / patches / integrate.c.patch
1 $DragonFly: src/gnu/usr.bin/cc3/cc_int/patches/Attic/integrate.c.patch,v 1.1 2004/03/05 21:38:44 joerg Exp $
2 Index: integrate.c
3 ===================================================================
4 RCS file: /cvs/src/contrib/gcc-3.3/gcc/integrate.c,v
5 retrieving revision 1.1
6 diff -u -r1.1 integrate.c
7 --- integrate.c 2 Feb 2004 23:09:48 -0000       1.1
8 +++ integrate.c 4 Mar 2004 15:18:37 -0000
9 @@ -401,6 +401,10 @@
10    /* These args would always appear unused, if not for this.  */
11    TREE_USED (copy) = 1;
12  
13 +  /* The inlined variable is marked as INLINE not to sweep by propolice */
14 +  if (flag_propolice_protection && TREE_CODE (copy) == VAR_DECL)
15 +    DECL_INLINE (copy) = 1;
16 +
17    /* Set the context for the new declaration.  */
18    if (!DECL_CONTEXT (decl))
19      /* Globals stay global.  */
20 @@ -1965,6 +1969,10 @@
21  
22               seq = get_insns ();
23               end_sequence ();
24 +#ifdef FRAME_GROWS_DOWNWARD
25 +             if (flag_propolice_protection && GET_CODE (seq) == SET)
26 +               RTX_INTEGRATED_P (SET_SRC (seq)) = 1;
27 +#endif
28               emit_insn_after (seq, map->insns_at_start);
29               return temp;
30             }