]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/ira.h
2008-08-26 Vladimir Makarov <vmakarov@redhat.com>
[thirdparty/gcc.git] / gcc / ira.h
CommitLineData
47dd2e78 1/* Communication between the Integrated Register Allocator (IRA) and
2 the rest of the compiler.
3 Copyright (C) 2006, 2007, 2008
4 Free Software Foundation, Inc.
5 Contributed by Vladimir Makarov <vmakarov@redhat.com>.
6
7This file is part of GCC.
8
9GCC is free software; you can redistribute it and/or modify it under
10the terms of the GNU General Public License as published by the Free
11Software Foundation; either version 3, or (at your option) any later
12version.
13
14GCC is distributed in the hope that it will be useful, but WITHOUT ANY
15WARRANTY; without even the implied warranty of MERCHANTABILITY or
16FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
17for more details.
18
19You should have received a copy of the GNU General Public License
20along with GCC; see the file COPYING3. If not see
21<http://www.gnu.org/licenses/>. */
22
23extern void ira_init_once (void);
24extern void ira_init (void);
25extern void ira_finish_once (void);
26extern rtx ira_eliminate_regs (rtx, enum machine_mode);
27extern void ira_sort_insn_chain (bool);
28
29extern void ira_sort_regnos_for_alter_reg (int *, int, unsigned int *);
30extern void ira_mark_allocation_change (int);
31extern void ira_mark_memory_move_deletion (int, int);
32extern bool ira_reassign_pseudos (int *, int, HARD_REG_SET, HARD_REG_SET *,
33 HARD_REG_SET *, bitmap);
34extern rtx ira_reuse_stack_slot (int, unsigned int, unsigned int);
35extern void ira_mark_new_stack_slot (rtx, int, unsigned int);
36extern bool ira_better_spill_reload_regno_p (int *, int *, rtx, rtx, rtx);
37