]>
git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/config/msp430/msp430-protos.h
1 /* Exported function prototypes from the TI MSP430 backend.
2 Copyright (C) 2012-2015 Free Software Foundation, Inc.
3 Contributed by Red Hat.
5 This file is part of GCC.
7 GCC is free software; you can redistribute it and/or modify
8 it under the terms of the GNU General Public License as published by
9 the Free Software Foundation; either version 3, or (at your option)
12 GCC is distributed in the hope that it will be useful,
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
17 You should have received a copy of the GNU General Public License
18 along with GCC; see the file COPYING3. If not see
19 <http://www.gnu.org/licenses/>. */
21 #ifndef GCC_MSP430_PROTOS_H
22 #define GCC_MSP430_PROTOS_H
24 bool msp430_do_not_relax_short_jumps (void);
25 rtx
msp430_eh_return_stackadj_rtx (void);
26 void msp430_expand_eh_return (rtx
);
27 void msp430_expand_epilogue (int);
28 void msp430_expand_helper (rtx
*operands
, const char *, bool);
29 void msp430_expand_prologue (void);
30 const char * msp430x_extendhisi (rtx
*);
31 void msp430_fixup_compare_operands (machine_mode
, rtx
*);
32 int msp430_hard_regno_mode_ok (int, machine_mode
);
33 int msp430_hard_regno_nregs (int, machine_mode
);
34 int msp430_hard_regno_nregs_has_padding (int, machine_mode
);
35 int msp430_hard_regno_nregs_with_padding (int, machine_mode
);
36 bool msp430_hwmult_enabled (void);
37 rtx
msp430_incoming_return_addr_rtx (void);
38 void msp430_init_cumulative_args (CUMULATIVE_ARGS
*, tree
, rtx
, tree
, int);
39 int msp430_initial_elimination_offset (int, int);
40 bool msp430_is_interrupt_func (void);
41 const char * msp430x_logical_shift_right (rtx
);
42 const char * msp430_mcu_name (void);
43 bool msp430_modes_tieable_p (machine_mode
, machine_mode
);
44 void msp430_output_aligned_decl_common (FILE *, const tree
, const char *, unsigned HOST_WIDE_INT
, unsigned);
45 void msp430_output_labelref (FILE *, const char *);
46 void msp430_register_pragmas (void);
47 rtx
msp430_return_addr_rtx (int);
48 void msp430_split_movsi (rtx
*);
49 void msp430_start_function (FILE *, const char *, tree
);
50 rtx
msp430_subreg (machine_mode
, rtx
, machine_mode
, int);
51 bool msp430_use_f5_series_hwmult (void);
53 #endif /* GCC_MSP430_PROTOS_H */