]>
Commit | Line | Data |
---|---|---|
b0106b24 | 1 | /* Definitions of target machine for GNU compiler, for the pdp-11 |
85ec4feb | 2 | Copyright (C) 2000-2018 Free Software Foundation, Inc. |
b0106b24 KG |
3 | Contributed by Michael K. Gschwind (mike@vlsivie.tuwien.ac.at). |
4 | ||
7ec022b2 | 5 | This file is part of GCC. |
b0106b24 | 6 | |
7ec022b2 | 7 | GCC is free software; you can redistribute it and/or modify |
b0106b24 | 8 | it under the terms of the GNU General Public License as published by |
2f83c7d6 | 9 | the Free Software Foundation; either version 3, or (at your option) |
b0106b24 KG |
10 | any later version. |
11 | ||
7ec022b2 | 12 | GCC is distributed in the hope that it will be useful, |
b0106b24 KG |
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. | |
16 | ||
17 | You should have received a copy of the GNU General Public License | |
2f83c7d6 NC |
18 | along with GCC; see the file COPYING3. If not see |
19 | <http://www.gnu.org/licenses/>. */ | |
b0106b24 KG |
20 | |
21 | /* declarations */ | |
22 | #ifdef RTX_CODE | |
ef4bddc2 | 23 | extern int simple_memory_operand (rtx, machine_mode); |
b0106b24 | 24 | |
e621b588 | 25 | extern int legitimate_const_double_p (rtx); |
f12b3fc8 SB |
26 | extern void notice_update_cc_on_set (rtx, rtx); |
27 | extern void output_addr_const_pdp11 (FILE *, rtx); | |
30442c59 | 28 | extern const char *output_move_multiple (rtx *); |
f12b3fc8 | 29 | extern const char *output_block_move (rtx *); |
f90b7a5a | 30 | extern const char *output_jump (enum rtx_code, int, int); |
f12b3fc8 | 31 | extern void print_operand_address (FILE *, rtx); |
30442c59 PK |
32 | typedef enum { no_action, dec_before, inc_after } pdp11_action; |
33 | typedef enum { little, either, big } pdp11_partorder; | |
34 | extern bool pdp11_expand_operands (rtx *, rtx [][2], int, | |
35 | pdp11_action *, pdp11_partorder); | |
8662b2ba | 36 | extern int pdp11_sp_frame_offset (void); |
58dd8e86 PK |
37 | extern int pdp11_initial_elimination_offset (int, int); |
38 | extern enum reg_class pdp11_regno_reg_class (int); | |
a01c666c | 39 | |
b0106b24 KG |
40 | #endif /* RTX_CODE */ |
41 | ||
f12b3fc8 | 42 | extern void output_ascii (FILE *, const char *, int); |
dad6bca9 | 43 | extern void pdp11_asm_output_var (FILE *, const char *, int, int, bool); |
8662b2ba RH |
44 | extern void pdp11_expand_prologue (void); |
45 | extern void pdp11_expand_epilogue (void); | |
ef295bce | 46 | extern int pdp11_branch_cost (void); |
7b4df2bf | 47 | extern poly_int64 pdp11_push_rounding (poly_int64); |