http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50299
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2011-09-12 15:49:43 UTC --- Author: jakub Date: Mon Sep 12 15:49:38 2011 New Revision: 178784 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=178784 Log: PR debug/50299 * calls.c (load_register_parameters): Use use_reg_mode instead of use_reg when adding a single register CALL_INSN_FUNCTION_USAGE entry. (expand_call): Set EXPR_LIST mode to TYPE_MODE of the argument for stack CALL_INSN_FUNCTION_USAGE uses. * expr.h (use_reg_mode): New prototype. (use_reg): Changed into inline around use_reg_mode. * expr.c (use_reg): Renamed to... (use_reg_mode): ... this. Added MODE argument, set EXPR_LIST mode to that mode instead of VOIDmode. * var-tracking.c (prepare_call_arguments): Don't track parameters whose EXPR_LIST mode is VOIDmode, BLKmode or X mode isn't convertible to it using lowpart_subreg. Convert VALUE and REG/MEM to the EXPR_LIST mode. Modified: trunk/gcc/ChangeLog trunk/gcc/calls.c trunk/gcc/expr.c trunk/gcc/expr.h trunk/gcc/var-tracking.c