--- gcc/config/arm.h 2018/04/24 17:51:33 1.1 +++ gcc/config/arm.h 2018/04/24 18:04:36 1.1.1.4 @@ -19,7 +19,7 @@ You should have received a copy of the G along with GNU CC; see the file COPYING. If not, write to the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ -/* Sometimes the directive `riscos' is check. This does not imply that this +/* Sometimes the directive `riscos' is checked. This does not imply that this tm file can be used unchanged to build a GCC for RISC OS. (Since in fact, it can't.) */ @@ -88,15 +88,15 @@ extern int target_flags; scheduling. Note that this only saves compilation time; it doesn't matter for the final code. */ #ifdef riscos -#define TARGET_WHEN_DEBUGING 3 +#define TARGET_WHEN_DEBUGGING 3 #else -#define TARGET_WHEN_DEBUGING 1 +#define TARGET_WHEN_DEBUGGING 1 #endif #define OVERRIDE_OPTIONS \ { \ if (write_symbols != NO_DEBUG) \ - target_flags |= TARGET_WHEN_DEBUGING; \ + target_flags |= TARGET_WHEN_DEBUGGING; \ else if (TARGET_POKE_FUNCTION_NAME) \ target_flags |= 1; \ if (TARGET_FPE) \ @@ -125,7 +125,7 @@ extern int target_flags; numbered. */ #define WORDS_BIG_ENDIAN 0 -/* Number of bits in an addressible storage unit */ +/* Number of bits in an addressable storage unit */ #define BITS_PER_UNIT 8 #define BITS_PER_WORD 32 @@ -332,13 +332,13 @@ enum reg_class This macro defines what the ranges are. C is the letter, and VALUE is a constant value. Return 1 if VALUE is in the range specified by C. - I: immediate arithmetic operand (i.e. 8 bits shifted as requried). + I: immediate arithmetic operand (i.e. 8 bits shifted as required). J: valid indexing constants. */ #define CONST_OK_FOR_LETTER_P(VALUE, C) \ ((C) == 'I' ? const_ok_for_arm (VALUE) : \ (C) == 'J' ? (abs (VALUE) < 4096) : 0) -/* Constaint letter 'G' for the FPU immediate constants. */ +/* Constant letter 'G' for the FPU immediate constants. */ #define CONST_DOUBLE_OK_FOR_LETTER_P(X,C) \ ((C) == 'G' ? const_double_rtx_ok_for_fpu (X) : 0) @@ -841,9 +841,8 @@ do \ #define NO_RECURSIVE_FUNCTION_CSE 1 /* Max number of bytes we can move from memory to memory - in one reasonably fast instruction. - On the ARM, there are no instructions which move memory to memory! */ -#define MOVE_MAX 0 + in one reasonably fast instruction. */ +#define MOVE_MAX 4 /* Define if normal loads of shorter-than-word items from memory clears the rest of the bigs in the register. @@ -878,9 +877,6 @@ do \ /* Chars and shorts should be passed as ints. */ #define PROMOTE_PROTOTYPES 1 -/* There is no support for s insns at present */ -#define STORE_FLAG_VALUE 0 - /* The machine modes of pointers and functions */ #define Pmode SImode #define FUNCTION_MODE Pmode @@ -891,7 +887,7 @@ do \ /* The relative costs of various types of constants. Note that cse.c defines REG = 1, SUBREG = 2, any node = (2 + sum of subnodes). */ -#define CONST_COSTS(RTX, CODE) \ +#define CONST_COSTS(RTX, CODE, OUTER_CODE) \ case CONST_INT: \ if (const_ok_for_arm (INTVAL (RTX))) \ return (2); \ @@ -974,8 +970,8 @@ do \ #define ASM_APP_OFF "" /* Switch to the text or data segment. */ -#define TEXT_SECTION_ASM_OP "\n\t.text\n" -#define DATA_SECTION_ASM_OP "\n\t.data\n" +#define TEXT_SECTION_ASM_OP ".text" +#define DATA_SECTION_ASM_OP ".data" /* The assembler's names for the registers. RFP need not always be used as the Real framepointer; it can also be used as a normal general register. @@ -1166,7 +1162,7 @@ do \ extern char *arm_condition_codes[]; \ int i; \ \ - fflush (STREAM); /* XXX for dubugging only. */ \ + fflush (STREAM); /* XXX for debugging only. */ \ if (arm_ccfsm_state == 1 || arm_ccfsm_state == 2) \ { \ fprintf (STREAM, "@ \t"); \