mirror of git://gcc.gnu.org/git/gcc.git
arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
* config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED. * config/arm/arm.h (TARGET_AAPCS_BASED): Define. (TARGET_DOUBLEWORD_ALIGN): Use it. (WCHAR_TYPE): Define. (WCHAR_SIZE_TYPE): Define. (SIZE_TYPE): Define. From-SVN: r81665
This commit is contained in:
parent
10f4ab75ce
commit
b668593951
|
@ -1,3 +1,12 @@
|
||||||
|
2004-05-10 Paul Brook <paul@codesourcery.com>
|
||||||
|
|
||||||
|
* config/arm/arm.c (arm_promote_prototypes): Use TARGET_AAPCS_BASED.
|
||||||
|
* config/arm/arm.h (TARGET_AAPCS_BASED): Define.
|
||||||
|
(TARGET_DOUBLEWORD_ALIGN): Use it.
|
||||||
|
(WCHAR_TYPE): Define.
|
||||||
|
(WCHAR_SIZE_TYPE): Define.
|
||||||
|
(SIZE_TYPE): Define.
|
||||||
|
|
||||||
2004-05-10 Alan Modra <amodra@bigpond.net.au>
|
2004-05-10 Alan Modra <amodra@bigpond.net.au>
|
||||||
|
|
||||||
* config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4
|
* config/rs6000/rs6000.c (function_arg_boundary): Align for ABI_V4
|
||||||
|
|
|
@ -14550,6 +14550,6 @@ arm_no_early_mul_dep (rtx producer, rtx consumer)
|
||||||
static bool
|
static bool
|
||||||
arm_promote_prototypes (tree t ATTRIBUTE_UNUSED)
|
arm_promote_prototypes (tree t ATTRIBUTE_UNUSED)
|
||||||
{
|
{
|
||||||
return arm_abi == ARM_ABI_APCS || arm_abi == ARM_ABI_ATPCS;
|
return !TARGET_AAPCS_BASED;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -307,6 +307,8 @@ extern GTY(()) rtx aof_pic_label;
|
||||||
: (target_flags & THUMB_FLAG_BACKTRACE))
|
: (target_flags & THUMB_FLAG_BACKTRACE))
|
||||||
#define TARGET_CIRRUS_FIX_INVALID_INSNS (target_flags & CIRRUS_FIX_INVALID_INSNS)
|
#define TARGET_CIRRUS_FIX_INVALID_INSNS (target_flags & CIRRUS_FIX_INVALID_INSNS)
|
||||||
#define TARGET_LDRD (arm_arch5e && ARM_DOUBLEWORD_ALIGN)
|
#define TARGET_LDRD (arm_arch5e && ARM_DOUBLEWORD_ALIGN)
|
||||||
|
#define TARGET_AAPCS_BASED \
|
||||||
|
(arm_abi != ARM_ABI_APCS && arm_abi != ARM_ABI_ATPCS)
|
||||||
|
|
||||||
/* SUBTARGET_SWITCHES is used to add flags on a per-config basis. */
|
/* SUBTARGET_SWITCHES is used to add flags on a per-config basis. */
|
||||||
#ifndef SUBTARGET_SWITCHES
|
#ifndef SUBTARGET_SWITCHES
|
||||||
|
@ -655,8 +657,8 @@ extern int arm_is_6_or_7;
|
||||||
#define UNITS_PER_WORD 4
|
#define UNITS_PER_WORD 4
|
||||||
|
|
||||||
/* True if natural alignment is used for doubleword types. */
|
/* True if natural alignment is used for doubleword types. */
|
||||||
#define ARM_DOUBLEWORD_ALIGN \
|
#define ARM_DOUBLEWORD_ALIGN TARGET_AAPCS_BASED
|
||||||
(arm_abi == ARM_ABI_AAPCS || arm_abi == ARM_ABI_IWMMXT)
|
|
||||||
#define DOUBLEWORD_ALIGNMENT 64
|
#define DOUBLEWORD_ALIGNMENT 64
|
||||||
|
|
||||||
#define PARM_BOUNDARY 32
|
#define PARM_BOUNDARY 32
|
||||||
|
@ -716,6 +718,17 @@ extern const char * structure_size_string;
|
||||||
/* Nonzero if move instructions will actually fail to work
|
/* Nonzero if move instructions will actually fail to work
|
||||||
when given unaligned data. */
|
when given unaligned data. */
|
||||||
#define STRICT_ALIGNMENT 1
|
#define STRICT_ALIGNMENT 1
|
||||||
|
|
||||||
|
/* wchar_t is unsigned under the AAPCS. */
|
||||||
|
#ifndef WCHAR_TYPE
|
||||||
|
#define WCHAR_TYPE (TARGET_AAPCS_BASED ? "unsigned int" : "int")
|
||||||
|
|
||||||
|
#define WCHAR_TYPE_SIZE BITS_PER_WORD
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#ifndef SIZE_TYPE
|
||||||
|
#define SIZE_TYPE (TARGET_AAPCS_BASED ? "unsigned int" : "long unsigned int")
|
||||||
|
#endif
|
||||||
|
|
||||||
/* Standard register usage. */
|
/* Standard register usage. */
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue