+2015-11-11 Jiong Wang <jiong.wang@arm.com>
+ Jim Wilson <wilson@gcc.gnu.org>
+
+ PR target/67305
+ * config/arm/arm.md (neon_vector_mem_operand): Return FALSE if strict
+ be true and eliminable registers mentioned.
+
2015-11-11 Claudiu Zissulescu <claziss@synopsys.com>
* common/config/arc/arc-common.c (arc_handle_option): Handle ARCv2
rtx ind;
/* Reject eliminable registers. */
- if (! (reload_in_progress || reload_completed)
- && ( reg_mentioned_p (frame_pointer_rtx, op)
+ if (strict && ! (reload_in_progress || reload_completed)
+ && (reg_mentioned_p (frame_pointer_rtx, op)
|| reg_mentioned_p (arg_pointer_rtx, op)
|| reg_mentioned_p (virtual_incoming_args_rtx, op)
|| reg_mentioned_p (virtual_outgoing_args_rtx, op)
|| reg_mentioned_p (virtual_stack_dynamic_rtx, op)
|| reg_mentioned_p (virtual_stack_vars_rtx, op)))
- return !strict;
+ return FALSE;
/* Constants are converted into offsets from labels. */
if (!MEM_P (op))