aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorBernd Edlinger <bernd.edlinger@hotmail.de>2019-08-02 17:28:27 +0000
committerBernd Edlinger <edlinger@gcc.gnu.org>2019-08-02 17:28:27 +0000
commit8707c01da9b4a2160fbe04d282e2526da38d3e48 (patch)
tree6feea4af97bb03efcafa97d442c899379fe43b08 /gcc
parent25a60571aff8fcb526b5803dd658b98ffbcace13 (diff)
downloadgcc-8707c01da9b4a2160fbe04d282e2526da38d3e48.zip
gcc-8707c01da9b4a2160fbe04d282e2526da38d3e48.tar.gz
gcc-8707c01da9b4a2160fbe04d282e2526da38d3e48.tar.bz2
function.c (assign_parm_adjust_stack_rtl): Revise STRICT_ALIGNMENT check to use targetm.slow_unaligned_access instead.
2019-08-02 Bernd Edlinger <bernd.edlinger@hotmail.de> * function.c (assign_parm_adjust_stack_rtl): Revise STRICT_ALIGNMENT check to use targetm.slow_unaligned_access instead. From-SVN: r274025
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog3
-rw-r--r--gcc/function.c5
2 files changed, 6 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6d4fcf9..16e7f1d 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,8 @@
2019-08-02 Bernd Edlinger <bernd.edlinger@hotmail.de>
+ * 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 <sellcey@marvell.com>
diff --git a/gcc/function.c b/gcc/function.c
index e00b9ca..8274975 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)))