--- a/gcc/config/arm/arm.c
+++ b/gcc/config/arm/arm.c
@@ -9732,6 +9732,7 @@ arm_return_in_msb (const_tree valtype)
 {
   return (TARGET_AAPCS_BASED
           && BYTES_BIG_ENDIAN
+          && TYPE_MODE (valtype) != TImode
 	  && (AGGREGATE_TYPE_P (valtype)
 	      || TREE_CODE (valtype) == COMPLEX_TYPE
 	      || FIXED_POINT_TYPE_P (valtype)));
