Merge branch 'master' of ssh://crater.dragonflybsd.org/repository/git/dragonfly
[dragonfly.git] / gnu / usr.bin / cc34 / cc_prep / patches / integrate.c.patch
1 $DragonFly: src/gnu/usr.bin/cc34/cc_prep/patches/integrate.c.patch,v 1.4 2005/08/27 21:03:51 joerg Exp $
2
3 ===================================================================
4 RCS file: /home/joerg/wd/repository/dragonflybsd/src/contrib/gcc-3.4/gcc/integrate.c,v
5 retrieving revision 1.1
6 diff -u -r1.1 integrate.c
7 --- integrate.c 20 Jun 2004 02:14:49 -0000      1.1
8 +++ integrate.c 20 Dec 2004 20:48:11 -0000
9 @@ -393,6 +393,11 @@
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 change the location
14 +     by stack protector.  */
15 +  if (flag_propolice_protection && TREE_CODE (copy) == VAR_DECL)
16 +    DECL_COPIED (copy) = 1;
17 +
18    /* Set the context for the new declaration.  */
19    if (!DECL_CONTEXT (decl))
20      /* Globals stay global.  */
21 @@ -1970,6 +1975,12 @@
22  
23               seq = get_insns ();
24               end_sequence ();
25 +#ifdef ARGS_GROWS_DOWNWARD
26 +             /* Mark this pointer as the top of the argument
27 +                block. The pointer minus one is in the block.  */
28 +             if (flag_propolice_protection && GET_CODE (seq) == SET)
29 +               RTX_INTEGRATED_P (SET_SRC (seq)) = 1;
30 +#endif
31               emit_insn_after (seq, map->insns_at_start);
32               return temp;
33             }