#include <anl_pragma_construct.h>

Public Member Functions | |
| ANL_PRAGMA_CONSTRUCT (WN *pragma_begin, INT32 construct_level, ANL_FUNC_ENTRY *func_entry, MEM_POOL *pool) | |
| WN * | Next_Stmt () |
| void | Write (ANL_CBUF *cbuf) |
Static Public Member Functions | |
| static BOOL | Is_ProMpf_Pragma_Construct (WN *stmt) |
| static BOOL | Is_Valid_Dir (ANL_PRAGMA_ATTRIBUTE *dir, INT32 construct_level) |
Private Types | |
| enum | ANL_PRAGMA_KIND { ANL_UNKNOWN_PRAGMA, ANL_SECTION_PRAGMA, ANL_BARRIER_PRAGMA, ANL_ORDERED_PRAGMA, ANL_ATOMIC_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA } |
Private Member Functions | |
| BOOL | _End_Is_Part_Of_Construct (BOOL for_id) |
| void | _Find_Pragma_End_Stmt () |
| void | _Get_Max_Construct_Srcpos (ANL_SRCPOS *max) |
| void | _Write_Pragma_Directives (ANL_CBUF *cbuf) |
Private Attributes | |
| INT64 | _id |
| ANL_PRAGMA_KIND | _pragma_kind |
| WN * | _pragma_begin |
| WN * | _pragma_end |
| BOOL | _pr_end_part_of_body |
| BOOL | _is_omp |
| INT32 | _construct_level |
| ANL_FUNC_ENTRY * | _func_entry |
| MEM_POOL * | _pool |
Definition at line 54 of file anl_pragma_construct.h.
enum ANL_PRAGMA_CONSTRUCT::ANL_PRAGMA_KIND [private] |
| ANL_UNKNOWN_PRAGMA | |
| ANL_SECTION_PRAGMA | |
| ANL_BARRIER_PRAGMA | |
| ANL_ORDERED_PRAGMA | |
| ANL_ATOMIC_PRAGMA | |
| ANL_CRITICAL_SECTION_PRAGMA |
Definition at line 58 of file anl_pragma_construct.h.
| ANL_PRAGMA_CONSTRUCT::ANL_PRAGMA_CONSTRUCT | ( | WN * | pragma_begin, | |
| INT32 | construct_level, | |||
| ANL_FUNC_ENTRY * | func_entry, | |||
| MEM_POOL * | pool | |||
| ) |
Definition at line 339 of file anl_pragma_construct.cxx.
References _End_Is_Part_Of_Construct(), _Find_Pragma_End_Stmt(), _func_entry, _id, _is_omp, _pragma_end, _pragma_kind, ANL_ATOMIC_PRAGMA, ANL_BARRIER_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA, ANL_ORDERED_PRAGMA, ANL_SECTION_PRAGMA, ANL_UNKNOWN_PRAGMA, FALSE, ANL_FUNC_ENTRY::Next_Construct_Id(), OPR_PRAGMA, OPR_XPRAGMA, COUNTER::Post_Incr(), ANL_FUNC_ENTRY::Set_Construct_Id(), TRUE, WN_operator(), WN_pragma(), WN_PRAGMA_ATOMIC, WN_PRAGMA_BARRIER, WN_PRAGMA_CRITICAL_SECTION_BEGIN, WN_pragma_omp, WN_PRAGMA_ORDERED_BEGIN, and WN_PRAGMA_SECTION.

Definition at line 99 of file anl_pragma_construct.cxx.
References _pragma_end, _pragma_kind, ANL_ATOMIC_PRAGMA, ANL_BARRIER_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA, ANL_ORDERED_PRAGMA, ANL_SECTION_PRAGMA, FALSE, NULL, TRUE, WN_pragma(), WN_PRAGMA_CRITICAL_SECTION_END, and WN_PRAGMA_ORDERED_END.
Referenced by _Get_Max_Construct_Srcpos(), _Write_Pragma_Directives(), ANL_PRAGMA_CONSTRUCT(), Next_Stmt(), and Write().

| void ANL_PRAGMA_CONSTRUCT::_Find_Pragma_End_Stmt | ( | ) | [private] |
Definition at line 145 of file anl_pragma_construct.cxx.
References _pr_end_part_of_body, _pragma_begin, _pragma_end, _pragma_kind, ANL_ATOMIC_PRAGMA, ANL_BARRIER_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA, ANL_ORDERED_PRAGMA, ANL_SECTION_PRAGMA, ANL_DIAGNOSTICS::Error(), FALSE, NULL, OPR_PRAGMA, OPR_XPRAGMA, TRUE, WN_next(), WN_operator(), WN_pragma(), WN_PRAGMA_CRITICAL_SECTION_END, WN_PRAGMA_ORDERED_END, WN_PRAGMA_PSECTION_END, WN_PRAGMA_SECTION, and WN_PRAGMA_UNDEFINED.
Referenced by ANL_PRAGMA_CONSTRUCT().

| void ANL_PRAGMA_CONSTRUCT::_Get_Max_Construct_Srcpos | ( | ANL_SRCPOS * | max | ) | [private] |
Definition at line 210 of file anl_pragma_construct.cxx.
References _End_Is_Part_Of_Construct(), _pragma_begin, _pragma_end, Adjust_Srcpos_Range(), FALSE, min, and WN_next().
Referenced by _Write_Pragma_Directives(), and Write().

| void ANL_PRAGMA_CONSTRUCT::_Write_Pragma_Directives | ( | ANL_CBUF * | cbuf | ) | [private] |
Definition at line 228 of file anl_pragma_construct.cxx.
References _End_Is_Part_Of_Construct(), _func_entry, _Get_Max_Construct_Srcpos(), _id, _pool, _pragma_begin, _pragma_end, _pragma_kind, ANL_ATOMIC_PRAGMA, ANL_BARRIER_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA, ANL_ORDERED_PRAGMA, ANL_SECTION_PRAGMA, ANL_CBUF::Append_Pragma_Preamble(), ANL_CBUF::Chars(), CLASS_CONST, FALSE, ANL_FUNC_ENTRY::Get_Pragma_Srcpos_Range(), W2CF_TRANSLATOR::Language_is_C(), NULL, OPR_XPRAGMA, ANL_FUNC_ENTRY::Pu_Translator(), ST_class(), STC_val(), Targ_String_Address(), TRUE, WN_next(), WN_operator(), WN_pragma_omp, WN_st(), ANL_SRCPOS::Write(), ANL_CBUF::Write_Char(), ANL_CBUF::Write_Int(), and ANL_CBUF::Write_String().
Referenced by Write().

Definition at line 54 of file anl_pragma_construct.cxx.
References FALSE, NULL, OPR_PRAGMA, OPR_XPRAGMA, WN_operator(), WN_pragma(), WN_PRAGMA_ATOMIC, WN_PRAGMA_BARRIER, WN_PRAGMA_CRITICAL_SECTION_BEGIN, WN_PRAGMA_ORDERED_BEGIN, and WN_PRAGMA_SECTION.
Referenced by ANL_FUNC_ENTRY::Emit_Nested_Original_Constructs().

| BOOL ANL_PRAGMA_CONSTRUCT::Is_Valid_Dir | ( | ANL_PRAGMA_ATTRIBUTE * | dir, | |
| INT32 | construct_level | |||
| ) | [static] |
Definition at line 80 of file anl_pragma_construct.cxx.
References ANL_PRAGMA_ATTRIBUTE::Is_Pragma_Construct_Attribute().
Referenced by Write().

| WN * ANL_PRAGMA_CONSTRUCT::Next_Stmt | ( | ) |
Definition at line 394 of file anl_pragma_construct.cxx.
References _End_Is_Part_Of_Construct(), _pragma_end, next, TRUE, and WN_next().
Referenced by ANL_FUNC_ENTRY::Emit_Nested_Original_Constructs().

| void ANL_PRAGMA_CONSTRUCT::Write | ( | ANL_CBUF * | cbuf | ) |
Definition at line 407 of file anl_pragma_construct.cxx.
References _construct_level, _End_Is_Part_Of_Construct(), _func_entry, _Get_Max_Construct_Srcpos(), _id, _is_omp, _pool, _pr_end_part_of_body, _pragma_begin, _pragma_end, _pragma_kind, _Write_Pragma_Directives(), ANL_ATOMIC_PRAGMA, ANL_BARRIER_PRAGMA, ANL_CRITICAL_SECTION_PRAGMA, ANL_ORDERED_PRAGMA, ANL_SECTION_PRAGMA, ANL_UNKNOWN_PRAGMA, ANL_CBUF::Append_Pragma_Preamble(), ANL_CBUF::Chars(), ANL_FUNC_ENTRY::Emit_Nested_Original_Constructs(), FALSE, ANL_VARLIST::Insert_Var_Refs(), Is_Valid_Dir(), OPR_XPRAGMA, ANL_FUNC_ENTRY::Pu_Translator(), ANL_CBUF::Size(), TRUE, WN_next(), WN_operator(), ANL_VARLIST::Write(), ANL_SRCPOS::Write(), ANL_CBUF::Write_Char(), ANL_CBUF::Write_Int(), and ANL_CBUF::Write_String().
Referenced by ANL_FUNC_ENTRY::Emit_Nested_Original_Constructs().

INT32 ANL_PRAGMA_CONSTRUCT::_construct_level [private] |
Definition at line 74 of file anl_pragma_construct.h.
Referenced by Write().
ANL_FUNC_ENTRY* ANL_PRAGMA_CONSTRUCT::_func_entry [private] |
Definition at line 75 of file anl_pragma_construct.h.
Referenced by _Write_Pragma_Directives(), ANL_PRAGMA_CONSTRUCT(), and Write().
INT64 ANL_PRAGMA_CONSTRUCT::_id [private] |
Definition at line 68 of file anl_pragma_construct.h.
Referenced by _Write_Pragma_Directives(), ANL_PRAGMA_CONSTRUCT(), and Write().
BOOL ANL_PRAGMA_CONSTRUCT::_is_omp [private] |
Definition at line 73 of file anl_pragma_construct.h.
Referenced by ANL_PRAGMA_CONSTRUCT(), and Write().
MEM_POOL* ANL_PRAGMA_CONSTRUCT::_pool [private] |
Definition at line 76 of file anl_pragma_construct.h.
Referenced by _Write_Pragma_Directives(), and Write().
Definition at line 72 of file anl_pragma_construct.h.
Referenced by _Find_Pragma_End_Stmt(), and Write().
WN* ANL_PRAGMA_CONSTRUCT::_pragma_begin [private] |
Definition at line 70 of file anl_pragma_construct.h.
Referenced by _Find_Pragma_End_Stmt(), _Get_Max_Construct_Srcpos(), _Write_Pragma_Directives(), and Write().
WN* ANL_PRAGMA_CONSTRUCT::_pragma_end [private] |
Definition at line 71 of file anl_pragma_construct.h.
Referenced by _End_Is_Part_Of_Construct(), _Find_Pragma_End_Stmt(), _Get_Max_Construct_Srcpos(), _Write_Pragma_Directives(), ANL_PRAGMA_CONSTRUCT(), Next_Stmt(), and Write().
Definition at line 69 of file anl_pragma_construct.h.
Referenced by _End_Is_Part_Of_Construct(), _Find_Pragma_End_Stmt(), _Write_Pragma_Directives(), ANL_PRAGMA_CONSTRUCT(), and Write().
1.6.1