This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH, AArch64] Fix the pointer-typed function argument expansion in aarch64_simd_expand_args


This patch fixes a number of test failures in gcc.target/aarch64/v*.c in ILP32.

The corresponding RTL patterns for some load/store builtins have Pmode (i.e. DImode) specified for their address operands. However, coming from a pointer-typed function argument, op[argc] will have SImode in ILP32. Instead of duplicating these RTL patterns to cope with SImode operand (which e.g. would complicate arm_neon.h), we explicitly convert the operand to Pmode here; an address operand in a RTL shall have Pmode anyway. Note that if op[argc] already has DImode, convert_memory_address will simply return it.

OK for the trunk?

Thanks,
Yufeng

gcc/

	* gimple-ssa-strength-reduction.c (backtrace_base_for_ref): Call
	get_unwidened and check 'base_in' again.

Attachment: patch
Description: Text document


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]