1 /* Exported function prototypes from the TI MSP430 backend.
2 Copyright (C) 2012-2014 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 rtx
msp430_eh_return_stackadj_rtx (void);
25 void msp430_expand_eh_return (rtx
);
26 void msp430_expand_epilogue (int);
27 void msp430_expand_helper (rtx
*operands
, const char *, bool);
28 void msp430_expand_prologue (void);
29 const char * msp430x_extendhisi (rtx
*);
30 void msp430_fixup_compare_operands (enum machine_mode
, rtx
*);
31 int msp430_hard_regno_mode_ok (int, enum machine_mode
);
32 int msp430_hard_regno_nregs (int, enum machine_mode
);
33 rtx
msp430_incoming_return_addr_rtx (void);
34 void msp430_init_cumulative_args (CUMULATIVE_ARGS
*, tree
, rtx
, tree
, int);
35 int msp430_initial_elimination_offset (int, int);
36 bool msp430_is_interrupt_func (void);
37 const char * msp430x_logical_shift_right (rtx
);
38 const char * msp430_mcu_name (void);
39 bool msp430_modes_tieable_p (enum machine_mode
, enum machine_mode
);
40 void msp430_output_labelref (FILE *, const char *);
41 void msp430_register_pragmas (void);
42 rtx
msp430_return_addr_rtx (int);
43 void msp430_split_movsi (rtx
*);
44 void msp430_start_function (FILE *, const char *, tree
);
45 rtx
msp430_subreg (enum machine_mode
, rtx
, enum machine_mode
, int);
46 bool msp430_use_f5_series_hwmult (void);
48 #endif /* GCC_MSP430_PROTOS_H */