GCC Middle and Back End API Reference
Main Page
Namespaces
Data Structures
Files
File List
Globals
tree-ssa-threadupdate.h
Go to the documentation of this file.
1
/* Communication between registering jump thread requests and
2
updating the SSA/CFG for jump threading.
3
Copyright (C) 2013 Free Software Foundation, Inc.
4
5
This file is part of GCC.
6
7
GCC is free software; you can redistribute it and/or modify
8
it under the terms of the GNU General Public License as published by
9
the Free Software Foundation; either version 3, or (at your option)
10
any later version.
11
12
GCC is distributed in the hope that it will be useful,
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
18
along with GCC; see the file COPYING3. If not see
19
<http://www.gnu.org/licenses/>. */
20
21
#ifndef _TREE_SSA_THREADUPDATE_H
22
#define _TREE_SSA_THREADUPDATE_H 1
23
24
/* In tree-ssa-threadupdate.c. */
25
extern
bool
thread_through_all_blocks
(
bool
);
26
enum
jump_thread_edge_type
27
{
28
EDGE_START_JUMP_THREAD
,
29
EDGE_COPY_SRC_BLOCK
,
30
EDGE_COPY_SRC_JOINER_BLOCK
,
31
EDGE_NO_COPY_SRC_BLOCK
32
};
33
34
class
jump_thread_edge
35
{
36
public
:
37
jump_thread_edge
(
edge
e
,
enum
jump_thread_edge_type
type
)
38
: e (e), type (type) {}
39
40
edge
e
;
41
enum
jump_thread_edge_type
type
;
42
};
43
44
extern
void
register_jump_thread
(
vec <class jump_thread_edge *>
*);
45
#endif
gcc
tree-ssa-threadupdate.h
Generated by
1.8.1.1