Reverting merge from trunk
[official-gcc.git] / gcc / config / lm32 / lm32-protos.h
blob311255c8a440130c9c8d7441036dbd193b56e37e
1 /* Prototypes of target machine functions, Lattice Mico32 architecture.
2 Contributed by Jon Beniston <jon@beniston.com>
4 Copyright (C) 2009-2013 Free Software Foundation, Inc.
6 This file is part of GCC.
8 GCC is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published
10 by the Free Software Foundation; either version 3, or (at your
11 option) any later version.
13 GCC is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
16 License for more details.
18 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING3. If not see
20 <http://www.gnu.org/licenses/>. */
22 extern int lm32_return_in_memory (tree type);
23 extern void lm32_declare_object (FILE *stream, char *name, char *init_string,
24 char *final_string, int size);
25 extern void lm32_expand_prologue (void);
26 extern void lm32_expand_epilogue (void);
27 extern void lm32_print_operand (FILE *file, rtx op, int letter);
28 extern void lm32_print_operand_address (FILE *file, rtx addr);
29 extern HOST_WIDE_INT lm32_compute_initial_elimination_offset (int from,
30 int to);
31 extern int lm32_can_use_return (void);
32 extern rtx lm32_return_addr_rtx (int count, rtx frame);
33 extern int lm32_expand_block_move (rtx *);
34 extern int nonpic_symbol_mentioned_p (rtx);
35 extern rtx lm32_legitimize_pic_address (rtx, enum machine_mode, rtx);
36 extern void lm32_expand_scc (rtx operands[]);
37 extern void lm32_expand_conditional_branch (rtx operands[]);
38 extern bool lm32_move_ok (enum machine_mode, rtx operands[2]);