]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/pdp11/pdp11-protos.h
Update copyright years.
[thirdparty/gcc.git] / gcc / config / pdp11 / pdp11-protos.h
CommitLineData
b0106b24 1/* Definitions of target machine for GNU compiler, for the pdp-11
8d9254fc 2 Copyright (C) 2000-2020 Free Software Foundation, Inc.
b0106b24
KG
3 Contributed by Michael K. Gschwind (mike@vlsivie.tuwien.ac.at).
4
7ec022b2 5This file is part of GCC.
b0106b24 6
7ec022b2 7GCC is free software; you can redistribute it and/or modify
b0106b24 8it under the terms of the GNU General Public License as published by
2f83c7d6 9the Free Software Foundation; either version 3, or (at your option)
b0106b24
KG
10any later version.
11
7ec022b2 12GCC is distributed in the hope that it will be useful,
b0106b24
KG
13but WITHOUT ANY WARRANTY; without even the implied warranty of
14MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15GNU General Public License for more details.
16
17You should have received a copy of the GNU General Public License
2f83c7d6
NC
18along 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 23extern int simple_memory_operand (rtx, machine_mode);
b4324a14 24extern int no_side_effect_operand (rtx, machine_mode);
e621b588 25extern int legitimate_const_double_p (rtx);
f12b3fc8
SB
26extern void notice_update_cc_on_set (rtx, rtx);
27extern void output_addr_const_pdp11 (FILE *, rtx);
30442c59 28extern const char *output_move_multiple (rtx *);
b4324a14 29extern const char *output_jump (rtx *, int, int);
f12b3fc8 30extern void print_operand_address (FILE *, rtx);
30442c59
PK
31typedef enum { no_action, dec_before, inc_after } pdp11_action;
32typedef enum { little, either, big } pdp11_partorder;
442fcea7 33extern bool pdp11_expand_operands (rtx *, rtx [][2], int, int,
30442c59 34 pdp11_action *, pdp11_partorder);
58dd8e86
PK
35extern int pdp11_initial_elimination_offset (int, int);
36extern enum reg_class pdp11_regno_reg_class (int);
b4324a14
PK
37extern bool pdp11_fixed_cc_regs (unsigned int *, unsigned int *);
38extern machine_mode pdp11_cc_mode (enum rtx_code, rtx, rtx);
39extern bool pdp11_expand_shift (rtx *, rtx (*) (rtx, rtx, rtx),
40 rtx (*) (rtx, rtx, rtx));
41extern const char * pdp11_assemble_shift (rtx *, machine_mode, int);
9cd1665b 42extern int pdp11_shift_length (rtx *, machine_mode, int, bool);
442fcea7
PK
43extern int pdp11_cmp_length (rtx *, int);
44extern bool pushpop_regeq (rtx, int);
b4324a14 45extern bool pdp11_small_shift (int);
a01c666c 46
b0106b24
KG
47#endif /* RTX_CODE */
48
f12b3fc8 49extern void output_ascii (FILE *, const char *, int);
dad6bca9 50extern void pdp11_asm_output_var (FILE *, const char *, int, int, bool);
8662b2ba
RH
51extern void pdp11_expand_prologue (void);
52extern void pdp11_expand_epilogue (void);
7b4df2bf 53extern poly_int64 pdp11_push_rounding (poly_int64);
4aef57c9
PK
54extern void pdp11_gen_int_label (char *, const char *, int);
55extern void pdp11_output_labelref (FILE *, const char *);
56extern void pdp11_output_def (FILE *, const char *, const char *);
57extern void pdp11_output_addr_vec_elt (FILE *, int);