[PATCH] Updated DW_OP_GNU_entry_value/DW_TAG_GNU_call_site patch
Jakub Jelinek
jakub@redhat.com
Wed Mar 16 23:28:00 GMT 2011
On Wed, Mar 16, 2011 at 03:38:25PM -0700, H.J. Lu wrote:
IMNSHO you really should reconsider using Pmode != ptr_mode for your port.
That said, the patch looks good to me, though I can't approve it.
> diff --git a/gcc/ChangeLog.x32 b/gcc/ChangeLog.x32
> index 764e3de..45db256 100644
> --- a/gcc/ChangeLog.x32
> +++ b/gcc/ChangeLog.x32
> @@ -1,5 +1,9 @@
> 2011-03-16 H.J. Lu <hongjiu.lu@intel.com>
>
> + * var-tracking.c (prepare_call_arguments): Check SUBREG.
Just mention PR debug/48160 in the ChangeLog entry...
> +
> +2011-03-16 H.J. Lu <hongjiu.lu@intel.com>
> +
> PR rtl-optimization/48155
> * reload1.c (gen_reload): Check if XEXP (in, 0/1) is SUBREG of
> REG in PLUS.
> diff --git a/gcc/var-tracking.c b/gcc/var-tracking.c
> index 266f11f..cfa74a6 100644
> --- a/gcc/var-tracking.c
> +++ b/gcc/var-tracking.c
> @@ -5763,7 +5763,11 @@ prepare_call_arguments (basic_block bb, rtx insn)
>
> /* Try harder, when passing address of a constant
> pool integer it can be easily read back. */
> - val = CSELIB_VAL_PTR (XEXP (item, 1));
> + item = XEXP (item, 1);
> + if (GET_CODE (item) == SUBREG)
> + item = SUBREG_REG (item);
> + gcc_assert (GET_CODE (item) == VALUE);
> + val = CSELIB_VAL_PTR (item);
> for (l = val->locs; l; l = l->next)
> if (GET_CODE (l->loc) == SYMBOL_REF
> && TREE_CONSTANT_POOL_ADDRESS_P (l->loc)
Jakub
More information about the Gcc-patches
mailing list