Another NaT bit propagation bug.
Graham Stott
grahams@redhat.com
Tue Nov 13 15:03:00 GMT 2001
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
More information about the Gcc-patches
mailing list