OpenADFortTk (including Open64 and OpenAnalysis references)
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
wn_mp.h
Go to the documentation of this file.
1
/*
2
3
Copyright (C) 2000, 2001 Silicon Graphics, Inc. All Rights Reserved.
4
5
This program is free software; you can redistribute it and/or modify it
6
under the terms of version 2 of the GNU General Public License as
7
published by the Free Software Foundation.
8
9
This program is distributed in the hope that it would be useful, but
10
WITHOUT ANY WARRANTY; without even the implied warranty of
11
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
12
13
Further, this software is distributed without any warranty that it is
14
free of the rightful claim of any third person regarding infringement
15
or the like. Any license provided herein, whether implied or
16
otherwise, applies only to this software file. Patent licenses, if
17
any, provided herein do not apply to combinations of this program with
18
other software, or any other product whatsoever.
19
20
You should have received a copy of the GNU General Public License along
21
with this program; if not, write the Free Software Foundation, Inc., 59
22
Temple Place - Suite 330, Boston MA 02111-1307, USA.
23
24
Contact information: Silicon Graphics, Inc., 1600 Amphitheatre Pky,
25
Mountain View, CA 94043, or:
26
27
http://www.sgi.com
28
29
For further information regarding this notice, see:
30
31
http://oss.sgi.com/projects/GenInfo/NoticeExplan
32
33
*/
34
35
68
#ifndef wnmp_INCLUDED
69
#define wnmp_INCLUDED "wn_mp.h"
70
71
#ifndef __ELF_H__
72
#include <elf.h>
/* pu_info.h can't compile without this */
73
#endif
74
75
#ifndef dwarf_DST_INCLUDED
76
#include "
dwarf_DST.h
"
/* for DST_IDX and DST_INFO_IDX */
77
#endif
78
79
#ifndef pu_info_INCLUDED
/* for PU_Info */
80
#include "
pu_info.h
"
81
#endif
82
83
#ifndef cxx_template_INCLUDED
84
#include "
cxx_template.h
"
/* for DYN_ARRAY */
85
#endif
86
87
#ifdef __cplusplus
88
extern
"C"
{
89
#endif
90
91
extern
WN
*
lower_mp
(
WN
*,
WN
*,
INT32
);
92
extern
void
LowerMP_PU_Init
(
void
);
93
94
extern
WN
*
Gen_MP_Getlock
(
ST
* lock );
95
extern
WN
*
Gen_MP_Unlock
(
ST
* lock ) ;
96
extern
WN
*
Gen_MP_Setlock
(
void
);
97
extern
WN
*
Gen_MP_Unsetlock
(
void
);
98
99
// list of the STORE nodes for the REDUCTION pragmas of an MP construct
100
typedef
DYN_ARRAY<WN *>
REDUCTION_LIST
;
101
extern
INT
102
MP_Reduction_Combine_Cycles
(REDUCTION_LIST *rlist,
BOOL
*using_critical);
103
104
typedef
enum
{
105
MPP_UNKNOWN
,
106
MPP_COPYIN
,
107
MPP_CRITICAL_SECTION
,
108
MPP_SINGLE
,
109
MPP_ORPHANED_SINGLE
,
110
MPP_PDO
,
111
MPP_ORPHANED_PDO
,
112
MPP_PARALLEL_DO
,
113
MPP_PARALLEL_REGION
114
}
MP_process_type
;
115
116
extern
WN
*
Gen_OMP_Begin_SPR
(
MP_process_type
mpt);
117
extern
WN
*
Gen_OMP_End_SPR
(
MP_process_type
mpt);
118
119
extern
BOOL
Is_Nonpod_Finalization_IF
(
WN
*wn,
BOOL
*is_first_and_last);
120
121
extern
void
Move_Non_POD_Finalization_Code
(
WN
*block);
122
123
extern
void
MP_Fix_Dependence_Graph
(
PU_Info
*parent_pu_info,
124
PU_Info
*child_pu_info,
WN
*child_wn);
125
extern
WN
*
Copy_Non_MP_Tree
(
WN
* tree );
126
127
extern
DST_IDX
Find_DST_From_ST
(
ST
*st,
PU_Info
*
pu_info
);
128
extern
void
129
Create_New_DST
(
DST_INFO_IDX
dst,
ST
*st ,
BOOL
append_to_nested );
130
131
extern
BOOL
WN_has_pragma_with_side_effect
(
WN
*wn );
132
133
134
#ifdef __cplusplus
135
}
136
#endif
137
138
#endif
Open64
osprey1.0
be
com
wn_mp.h
Generated on Fri Mar 14 2014 04:22:57 for OpenADFortTk (including Open64 and OpenAnalysis references) by
1.8.4