From 8707c01da9b4a2160fbe04d282e2526da38d3e48 Mon Sep 17 00:00:00 2001 From: Bernd Edlinger Date: Fri, 2 Aug 2019 17:28:27 +0000 Subject: [PATCH] function.c (assign_parm_adjust_stack_rtl): Revise STRICT_ALIGNMENT check to use targetm.slow_unaligned_access instead. 2019-08-02 Bernd Edlinger * function.c (assign_parm_adjust_stack_rtl): Revise STRICT_ALIGNMENT check to use targetm.slow_unaligned_access instead. From-SVN: r274025 --- gcc/ChangeLog | 3 +++ gcc/function.c | 5 +++-- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 6d4fcf9ee6c..16e7f1d879a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,8 @@ 2019-08-02 Bernd Edlinger + * function.c (assign_parm_adjust_stack_rtl): Revise STRICT_ALIGNMENT + check to use targetm.slow_unaligned_access instead. + * function.c (assign_param_data_one): Remove unused data members. 2019-08-02 Steve Ellcey diff --git a/gcc/function.c b/gcc/function.c index e00b9ca0858..8274975ce33 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -2811,8 +2811,9 @@ assign_parm_adjust_stack_rtl (struct assign_parm_data_one *data) ultimate type, don't use that slot after entry. We'll make another stack slot, if we need one. */ if (stack_parm - && ((STRICT_ALIGNMENT - && GET_MODE_ALIGNMENT (data->nominal_mode) > MEM_ALIGN (stack_parm)) + && ((GET_MODE_ALIGNMENT (data->nominal_mode) > MEM_ALIGN (stack_parm) + && targetm.slow_unaligned_access (data->nominal_mode, + MEM_ALIGN (stack_parm))) || (data->nominal_type && TYPE_ALIGN (data->nominal_type) > MEM_ALIGN (stack_parm) && MEM_ALIGN (stack_parm) < PREFERRED_STACK_BOUNDARY))) -- 2.30.2