c++: Implement C++23 P2266R1, Simpler implicit move [PR101165]
[official-gcc.git] / gcc / rtl-ssa.h
blob6fbac5cae41654014a06fc9358cc78c937924e85
1 // On-the-side RTL SSA representation -*- C++ -*-
2 // Copyright (C) 2020-2022 Free Software Foundation, Inc.
3 //
4 // This file is part of GCC.
5 //
6 // GCC is free software; you can redistribute it and/or modify it under
7 // the terms of the GNU General Public License as published by the Free
8 // Software Foundation; either version 3, or (at your option) any later
9 // version.
11 // GCC is distributed in the hope that it will be useful, but WITHOUT ANY
12 // WARRANTY; without even the implied warranty of MERCHANTABILITY or
13 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
14 // for more details.
16 // You should have received a copy of the GNU General Public License
17 // along with GCC; see the file COPYING3. If not see
18 // <http://www.gnu.org/licenses/>.
20 #ifndef GCC_RTL_SSA_H
21 #define GCC_RTL_SSA_H 1
23 // This is an aggregation header file. This means it should contain only
24 // other include files.
26 #if 0
27 // Files that use this one should first have:
28 #define INCLUDE_ALGORITHM
29 #define INCLUDE_FUNCTIONAL
30 #include "config.h"
31 #include "system.h"
32 #include "coretypes.h"
33 #include "backend.h"
34 #include "rtl.h"
35 #include "df.h"
36 #endif
38 // Needed by splay-tree-utils.h and directly by rtl-ssa.
39 #include "pretty-print.h"
41 // Needed directly by recog.h.
42 #include "insn-config.h"
44 // Needed directly by rtl-ssa.
45 #include "splay-tree-utils.h"
46 #include "recog.h"
47 #include "regs.h"
48 #include "function-abi.h"
49 #include "obstack-utils.h"
50 #include "mux-utils.h"
51 #include "rtlanal.h"
53 // Provides the global crtl->ssa.
54 #include "memmodel.h"
55 #include "tm_p.h"
56 #include "emit-rtl.h"
58 // The rtl-ssa files themselves.
59 #include "rtl-ssa/accesses.h"
60 #include "rtl-ssa/insns.h"
61 #include "rtl-ssa/blocks.h"
62 #include "rtl-ssa/changes.h"
63 #include "rtl-ssa/functions.h"
64 #include "rtl-ssa/is-a.inl"
65 #include "rtl-ssa/access-utils.h"
66 #include "rtl-ssa/insn-utils.h"
67 #include "rtl-ssa/movement.h"
68 #include "rtl-ssa/change-utils.h"
69 #include "rtl-ssa/member-fns.inl"
71 #endif