diff options
Diffstat (limited to 'gcc/config/lm32/lm32.c')
-rw-r--r-- | gcc/config/lm32/lm32.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/gcc/config/lm32/lm32.c b/gcc/config/lm32/lm32.c index 448da99e756..9677087cf0f 100644 --- a/gcc/config/lm32/lm32.c +++ b/gcc/config/lm32/lm32.c @@ -19,7 +19,7 @@ along with GCC; see the file COPYING3. If not see <http://www.gnu.org/licenses/>. */ -#define TARGET_C_FILE 1 +#define IN_TARGET_CODE 1 #include "config.h" #include "system.h" @@ -81,6 +81,7 @@ static void lm32_function_arg_advance (cumulative_args_t cum, const_tree type, bool named); static bool lm32_hard_regno_mode_ok (unsigned int, machine_mode); static bool lm32_modes_tieable_p (machine_mode, machine_mode); +static HOST_WIDE_INT lm32_starting_frame_offset (void); #undef TARGET_OPTION_OVERRIDE #define TARGET_OPTION_OVERRIDE lm32_option_override @@ -118,6 +119,9 @@ static bool lm32_modes_tieable_p (machine_mode, machine_mode); #undef TARGET_CONSTANT_ALIGNMENT #define TARGET_CONSTANT_ALIGNMENT constant_alignment_word_strings +#undef TARGET_STARTING_FRAME_OFFSET +#define TARGET_STARTING_FRAME_OFFSET lm32_starting_frame_offset + struct gcc_target targetm = TARGET_INITIALIZER; /* Current frame information calculated by lm32_compute_frame_size. */ @@ -1251,3 +1255,11 @@ lm32_modes_tieable_p (machine_mode mode1, machine_mode mode2) && GET_MODE_SIZE (mode1) <= UNITS_PER_WORD && GET_MODE_SIZE (mode2) <= UNITS_PER_WORD); } + +/* Implement TARGET_STARTING_FRAME_OFFSET. */ + +static HOST_WIDE_INT +lm32_starting_frame_offset (void) +{ + return UNITS_PER_WORD; +} |