This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
Re: Another NaT bit propagation bug.
- To: Andrew Macleod <amacleod at cygnus dot com>
- Subject: Re: Another NaT bit propagation bug.
- From: Graham Stott <grahams at redhat dot com>
- Date: Fri, 09 Nov 2001 17:17:53 +0000
- Cc: rth at redhat dot com, gcc-bugs at gcc dot gnu dot org, gcc-patches at gcc dot gnu dot org
- References: <200111091654.IAA23008@rtl.cygnus.com>
Andrew,
Andrew Macleod wrote:
>
[snip]
> + /* Indicates that any registers *initially* set via some form of a mask
> + instruction should be cleared prior to masking. This is used to prevent
> + propagation of incorrect sticky bits from unknown values. Typically
> + this would occur with bitfield operations. */
> + extern int flag_no_garbage_regs;
Agree don't much like the name, how about flag_no_prop_sticky_bits.
[snip]
> *************** note_outlining_of_inline_function (fndec
> *** 2723,2728 ****
> --- 2728,2827 ----
> #endif
> }
>
> +
> + int initialize_uninitialized_subregs PARAMS ((void));
> + int find_regno_partial PARAMS ((rtx *, void *));
> +
> + static rtx find_regno_retval; /* Used to return a value from func. */
I'm not a fan of this global either how about defining a struct to contain
both the register and return value and pass a pointer to that.
Graham