(CPP_SPEC): Add defines for the cpu type, hard or soft floating point, and the APCS PC size.
(CPP_SPEC): Add defines for the cpu type, hard or soft floating point, and the APCS PC size. (TARGET_*): Restructure. (ARM_FLAG_*): Many new definitions for different target options, not all of which are supported yet. (TARGET_SWITCHES): Use the ARM_FLAG_* definitions instead of explicit numbers. (prog_mode_type): New enum. (floating_point_type): Split emulated floating point into FP_SOFT[23]. (OVERRIDE_OPTIONS): Call arm_override_options. (ARM_CPU_NAME): Default to NULL if not defined by a subtarget. (BYTES_BIG_ENDIAN): Can now be set as a compilation option. (RETURN_IN_MEMORY, DEFAULT_PCC_STRUCT_RETURN): New definitions. (GO_IF_LEGITIMATE_OFFSET): Use different HImode offsets if compiling for an architecture 4 target. The offsets for floating point constants are the same as for integers if compiling TARGET_SOFT_FLOAT (GO_IF_LEGITIMATE_ADDRESS): Don't allow PRE_INC and POST_DEC if the size is more than 4 bytes. Restrict the range offsets for DImode; likewise for DFmode when TARGET_SOFT_FLOAT. (LEGITIMIZE_ADDRESS): Use symbol_mentioned_p, not LEGITIMATE_CONSTANT_P to determine if a constant address might be better in a register. Handle DFmode addresses in the same way as DImode if TARGET_SOFT_FLOAT. (LOAD_EXTEND_OP): If arm_arch4, then HImode also zero-extends. (SECONDARY_OUTPUT_RELOAD_CLASS): No need to handle floating point constants any more, since arm_reorg will deal with them. (LEGITIMATE_CONSTANT_P): Is now anything that doesn't contain a LABEL. (GO_IF_LEGITIMATE_ADDRESS): Recognize addresses expressions generated by arm_reorg, but only after reload has completed. (MACHINE_DEPENDENT_REORG): Define. (ASM_OUTPUT_SPECIAL_POOL_ENTRY): There should be nothing left in the pool, even if it might look like it. (most assembler-specific defines): Move to arm/aout.h. (CONSTANT_ADDRESS_P): Can't directly access constant strings when generating assembler for ARMASM. (ENCODE_SECTION_INFO): Don't define if generating ARMASM assembler. (ASM_OUTPUT_INTERNAL_LABEL): Generalize, so that it can be used with all targeted assemblers. (ASM_OUTPUT_LABEL): Call arm_asm_output_label. From-SVN: r10681
Showing
This diff is collapsed.
Click to expand it.
Please
register
or
sign in
to comment