00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043 enum addr_mode_values {Addr_Full,
00044 Addr_Fast };
00045
00046 enum comp_phase_values {Cmdline_Parsing,
00047 Pass1_Parsing,
00048 Lex_Parsing,
00049 Decl_Semantics,
00050 Pass2_Semantics,
00051 Inlining,
00052 Pdg_Conversion
00053 };
00054
00055 enum convert_to_string_values {Dont_Care,
00056 Binary_Fmt,
00057 Octal_Fmt,
00058 Hex_Fmt,
00059 Character_Fmt
00060 };
00061
00062 enum basic_type_values {Integer,
00063 Logical,
00064 Real,
00065 Complex,
00066 CRI_Ptr,
00067 CRI_Parcel_Ptr,
00068 CRI_Ch_Ptr,
00069 Typeless,
00070 Character,
00071 Structure,
00072 Num_Basic_Types,
00073 Last_Linear_Type = CRI_Ch_Ptr
00074 };
00075
00076 enum debug_lvl_values {Debug_Lvl_0,
00077 Debug_Lvl_1,
00078 Debug_Lvl_2,
00079 Debug_Lvl_3,
00080 No_Debugging
00081 };
00082
00083 enum expr_mode_values {Initialization_Expr,
00084 Specification_Expr,
00085 Stmt_Func_Expr,
00086 Data_Stmt_Target,
00087 Data_Stmt_Target_Expr,
00088 Restricted_Imp_Do_Target,
00089 Restricted_Imp_Do_Expr,
00090 Regular_Expr
00091 };
00092
00093 enum fld_values {NO_Tbl_Idx,
00094 CN_Tbl_Idx,
00095 SB_Tbl_Idx,
00096 IL_Tbl_Idx,
00097 AT_Tbl_Idx,
00098 SH_Tbl_Idx,
00099 IR_Tbl_Idx,
00100 IMPLICIT_Tbl_Idx
00101 };
00102
00103 enum fortran_type_values {Fortran_Integer,
00104 Fortran_Logical,
00105 Fortran_Real,
00106 Fortran_Double,
00107 Fortran_Complex,
00108 Fortran_Double_Complex,
00109 Fortran_Character,
00110 Fortran_Typeless,
00111 Num_Fortran_Types
00112 };
00113
00114 enum tasking_scope_values {Priv, Shared};
00115 typedef enum tasking_scope_values task_scope_type;
00116
00117
00118
00119
00120
00121
00122
00123 enum forward_ref_values {From_Assign_Stmt,
00124 From_Do_Stmt,
00125 To_Format_Stmt
00126 };
00127
00128
00129
00130
00131
00132
00133 enum glb_tbl_idx_values {Allocate_Attr_Idx,
00134 Ptr_Asg_Attr_Idx,
00135 Argchck_Attr_Idx,
00136 Backspace_Attr_Idx,
00137 Buffer_In_Attr_Idx,
00138 Buffer_Out_Attr_Idx,
00139 Close_Attr_Idx,
00140 Dealloc_Attr_Idx,
00141 Deallocate_Attr_Idx,
00142 End_Attr_Idx,
00143 Endfile_Attr_Idx,
00144 Inquire_Attr_Idx,
00145 Main_Attr_Idx,
00146 Open_Attr_Idx,
00147 Pause_Attr_Idx,
00148 Realloc_Attr_Idx,
00149 Rewind_Attr_Idx,
00150 Stop_Attr_Idx,
00151 Conform_Attr_Idx,
00152 Bounds_Attr_Idx,
00153 Rbounds_Attr_Idx,
00154 Sbounds_Attr_Idx,
00155 Ptr_Chk_Attr_Idx,
00156 Pe_Offset_Attr_Idx,
00157 Set_Numthreads_Attr_Idx,
00158 Num_Glb_Tbl_Idxs
00159 };
00160
00161
00162 enum inline_lvl_values {Inline_Lvl_0,
00163 Inline_Lvl_1,
00164 Inline_Lvl_2,
00165 Inline_Lvl_3,
00166 Inline_Lvl_4,
00167 Inline_Lvl_Err };
00168
00169 enum short_circuit_lvl_values {Short_Circuit_Off,
00170 Short_Circuit_Present,
00171 Short_Circuit_Left_Right,
00172 Short_Circuit_Functions};
00173
00174 typedef enum short_circuit_lvl_values short_circuit_lvl_type;
00175
00176 enum sgi_inline_state_values {Not_Specified_Sgi,
00177 Inline_Sgi,
00178 Noinline_Sgi };
00179
00180 typedef enum sgi_inline_state_values sgi_inline_state_type;
00181
00182
00183
00184 enum intrinsic_values {Unknown_Intrinsic,
00185 Abs_Intrinsic,
00186 Achar_Intrinsic,
00187 Acos_Intrinsic,
00188 Acosd_Intrinsic,
00189 Add_And_Fetch_Intrinsic,
00190 Adjustl_Intrinsic,
00191 Adjustr_Intrinsic,
00192 Aimag_Intrinsic,
00193 Aint_Intrinsic,
00194 All_Intrinsic,
00195 Allocated_Intrinsic,
00196 Alog_Intrinsic,
00197 Alog10_Intrinsic,
00198 Amax0_Intrinsic,
00199 Amax1_Intrinsic,
00200 Amin0_Intrinsic,
00201 Amin1_Intrinsic,
00202 Amod_Intrinsic,
00203 And_Intrinsic,
00204 And_And_Fetch_Intrinsic,
00205 Anint_Intrinsic,
00206 Any_Intrinsic,
00207 Asin_Intrinsic,
00208 Asind_Intrinsic,
00209 Associated_Intrinsic,
00210 Atan_Intrinsic,
00211 Atan2_Intrinsic,
00212 Atan2d_Intrinsic,
00213 Atand_Intrinsic,
00214 Bitest_Intrinsic,
00215 Bit_Size_Intrinsic,
00216 Bjtest_Intrinsic,
00217 Bktest_Intrinsic,
00218 Btest_Intrinsic,
00219 Cabs_Intrinsic,
00220 Ccos_Intrinsic,
00221 Cdabs_Intrinsic,
00222 Cdcos_Intrinsic,
00223 Cdexp_Intrinsic,
00224 Cdlog_Intrinsic,
00225 Cdsin_Intrinsic,
00226 Cdsqrt_Intrinsic,
00227 Ceiling_Intrinsic,
00228 Cexp_Intrinsic,
00229 Char_Intrinsic,
00230 Clear_Ieee_Exception_Intrinsic,
00231 Cloc_Intrinsic,
00232 Clock_Intrinsic,
00233 Clog_Intrinsic,
00234 Cmplx_Intrinsic,
00235 Compare_And_Swap_Intrinsic,
00236 Compl_Intrinsic,
00237 Conjg_Intrinsic,
00238 Cos_Intrinsic,
00239 Cosd_Intrinsic,
00240 Cosh_Intrinsic,
00241 Cot_Intrinsic,
00242 Count_Intrinsic,
00243 Cputime_Intrinsic,
00244 Cqabs_Intrinsic,
00245 Cqcos_Intrinsic,
00246 Cqexp_Intrinsic,
00247 Cqlog_Intrinsic,
00248 Cqsin_Intrinsic,
00249 Cqsqrt_Intrinsic,
00250 Cshift_Intrinsic,
00251 Csin_Intrinsic,
00252 Csmg_Intrinsic,
00253 Csqrt_Intrinsic,
00254 Cvmgm_Intrinsic,
00255 Cvmgn_Intrinsic,
00256 Cvmgp_Intrinsic,
00257 Cvmgt_Intrinsic,
00258 Cvmgz_Intrinsic,
00259 C_Loc_Intrinsic,
00260 Dabs_Intrinsic,
00261 Dacos_Intrinsic,
00262 Dacosd_Intrinsic,
00263 Dasin_Intrinsic,
00264 Dasind_Intrinsic,
00265 Datan_Intrinsic,
00266 Datan2_Intrinsic,
00267 Datan2d_Intrinsic,
00268 Datand_Intrinsic,
00269 Date_Intrinsic,
00270 Date_And_Time_Intrinsic,
00271 Dble_Intrinsic,
00272 Dbleq_Intrinsic,
00273 Dcmplx_Intrinsic,
00274 Dconjg_Intrinsic,
00275 Dcos_Intrinsic,
00276 Dcosd_Intrinsic,
00277 Dcosh_Intrinsic,
00278 Dcot_Intrinsic,
00279 Ddim_Intrinsic,
00280 Dexp_Intrinsic,
00281 Dfloat_Intrinsic,
00282 Dfloati_Intrinsic,
00283 Dfloatj_Intrinsic,
00284 Dfloatk_Intrinsic,
00285 Digits_Intrinsic,
00286 Dim_Intrinsic,
00287 Dimag_Intrinsic,
00288 Dint_Intrinsic,
00289 Disable_Ieee_Interrupt_Intrinsic,
00290 Dlog_Intrinsic,
00291 Dlog10_Intrinsic,
00292 Dmax1_Intrinsic,
00293 Dmin1_Intrinsic,
00294 Dmod_Intrinsic,
00295 Dnint_Intrinsic,
00296 Dot_Product_Intrinsic,
00297 Dprod_Intrinsic,
00298 Dreal_Intrinsic,
00299 Dshiftl_Intrinsic,
00300 Dshiftr_Intrinsic,
00301 Dsign_Intrinsic,
00302 Dsin_Intrinsic,
00303 Dsind_Intrinsic,
00304 Dsinh_Intrinsic,
00305 DSM_Chunksize_Intrinsic,
00306 DSM_Distribution_Block_Intrinsic,
00307 DSM_Distribution_Cyclic_Intrinsic,
00308 DSM_Distribution_Star_Intrinsic,
00309 DSM_Isdistributed_Intrinsic,
00310 DSM_Isreshaped_Intrinsic,
00311 DSM_Numchunks_Intrinsic,
00312 DSM_Numthreads_Intrinsic,
00313 DSM_Rem_Chunksize_Intrinsic,
00314 DSM_This_Chunksize_Intrinsic,
00315 DSM_This_Startingindex_Intrinsic,
00316 DSM_This_Threadnum_Intrinsic,
00317 Dsqrt_Intrinsic,
00318 Dtan_Intrinsic,
00319 Dtand_Intrinsic,
00320 Dtanh_Intrinsic,
00321 Enable_Ieee_Interrupt_Intrinsic,
00322 Eoshift_Intrinsic,
00323 Epsilon_Intrinsic,
00324 Eqv_Intrinsic,
00325 Exit_Intrinsic,
00326 Exp_Intrinsic,
00327 Exponent_Intrinsic,
00328 Fcd_Intrinsic,
00329 Fetch_And_Add_Intrinsic,
00330 Fetch_And_And_Intrinsic,
00331 Fetch_And_Nand_Intrinsic,
00332 Fetch_And_Or_Intrinsic,
00333 Fetch_And_Sub_Intrinsic,
00334 Fetch_And_Xor_Intrinsic,
00335 Float_Intrinsic,
00336 Floati_Intrinsic,
00337 Floatj_Intrinsic,
00338 Floatk_Intrinsic,
00339 Floor_Intrinsic,
00340 Fp_Class_Intrinsic,
00341 Fraction_Intrinsic,
00342 Free_Intrinsic,
00343 Getpos_Intrinsic,
00344 Get_Ieee_Exceptions_Intrinsic,
00345 Get_Ieee_Interrupts_Intrinsic,
00346 Get_Ieee_Rounding_Mode_Intrinsic,
00347 Get_Ieee_Status_Intrinsic,
00348 Huge_Intrinsic,
00349 Iabs_Intrinsic,
00350 Iachar_Intrinsic,
00351 Iand_Intrinsic,
00352 Ibchng_Intrinsic,
00353 Ibclr_Intrinsic,
00354 Ibits_Intrinsic,
00355 Ibset_Intrinsic,
00356 Ichar_Intrinsic,
00357 Idate_Intrinsic,
00358 Idim_Intrinsic,
00359 Idint_Intrinsic,
00360 Idnint_Intrinsic,
00361 Ieee_Binary_Scale_Intrinsic,
00362 Ieee_Class_Intrinsic,
00363 Ieee_Copy_Sign_Intrinsic,
00364 Ieee_Exponent_Intrinsic,
00365 Ieee_Finite_Intrinsic,
00366 Ieee_Int_Intrinsic,
00367 Ieee_Is_Nan_Intrinsic,
00368 Ieee_Next_After_Intrinsic,
00369 Ieee_Real_Intrinsic,
00370 Ieee_Remainder_Intrinsic,
00371 Ieee_Unordered_Intrinsic,
00372 Ieor_Intrinsic,
00373 Ifix_Intrinsic,
00374 Iiabs_Intrinsic,
00375 Iiand_Intrinsic,
00376 Iibchng_Intrinsic,
00377 Iibclr_Intrinsic,
00378 Iibits_Intrinsic,
00379 Iibset_Intrinsic,
00380 Iidim_Intrinsic,
00381 Iidint_Intrinsic,
00382 Iieor_Intrinsic,
00383 Iifix_Intrinsic,
00384 Iint_Intrinsic,
00385 Iior_Intrinsic,
00386 Iiqint_Intrinsic,
00387 Iisha_Intrinsic,
00388 Iishc_Intrinsic,
00389 Iishft_Intrinsic,
00390 Iishftc_Intrinsic,
00391 Iishl_Intrinsic,
00392 Iisign_Intrinsic,
00393 Ilen_Intrinsic,
00394 Imag_Intrinsic,
00395 Imod_Intrinsic,
00396 Imvbits_Intrinsic,
00397 Index_Intrinsic,
00398 Inint_Intrinsic,
00399 Inot_Intrinsic,
00400 Int_Intrinsic,
00401 Int1_Intrinsic,
00402 Int2_Intrinsic,
00403 Int4_Intrinsic,
00404 Int8_Intrinsic,
00405 Int_Mult_Upper_Intrinsic,
00406 Ior_Intrinsic,
00407 Iqint_Intrinsic,
00408 Iqnint_Intrinsic,
00409 Irtc_Intrinsic,
00410 Isha_Intrinsic,
00411 Ishc_Intrinsic,
00412 Ishft_Intrinsic,
00413 Ishftc_Intrinsic,
00414 Ishl_Intrinsic,
00415 Isign_Intrinsic,
00416 Isnan_Intrinsic,
00417 Jdate_Intrinsic,
00418 Jiabs_Intrinsic,
00419 Jiand_Intrinsic,
00420 Jibchng_Intrinsic,
00421 Jibclr_Intrinsic,
00422 Jibits_Intrinsic,
00423 Jibset_Intrinsic,
00424 Jidim_Intrinsic,
00425 Jidint_Intrinsic,
00426 Jieor_Intrinsic,
00427 Jifix_Intrinsic,
00428 Jint_Intrinsic,
00429 Jior_Intrinsic,
00430 Jiqint_Intrinsic,
00431 Jisha_Intrinsic,
00432 Jishc_Intrinsic,
00433 Jishft_Intrinsic,
00434 Jishftc_Intrinsic,
00435 Jishl_Intrinsic,
00436 Jisign_Intrinsic,
00437 Jmod_Intrinsic,
00438 Jmvbits_Intrinsic,
00439 Jnint_Intrinsic,
00440 Jnot_Intrinsic,
00441 Kiabs_Intrinsic,
00442 Kiand_Intrinsic,
00443 Kibchng_Intrinsic,
00444 Kibclr_Intrinsic,
00445 Kibits_Intrinsic,
00446 Kibset_Intrinsic,
00447 Kidim_Intrinsic,
00448 Kidint_Intrinsic,
00449 Kieor_Intrinsic,
00450 Kifix_Intrinsic,
00451 Kind_Intrinsic,
00452 Kint_Intrinsic,
00453 Kior_Intrinsic,
00454 Kiqint_Intrinsic,
00455 Kisha_Intrinsic,
00456 Kishc_Intrinsic,
00457 Kishft_Intrinsic,
00458 Kishftc_Intrinsic,
00459 Kishl_Intrinsic,
00460 Kisign_Intrinsic,
00461 Kmod_Intrinsic,
00462 Kmvbits_Intrinsic,
00463 Knint_Intrinsic,
00464 Knot_Intrinsic,
00465 Lbound_Intrinsic,
00466 Leadz_Intrinsic,
00467 Len_Intrinsic,
00468 Length_Intrinsic,
00469 Len_Trim_Intrinsic,
00470 Lge_Intrinsic,
00471 Lgt_Intrinsic,
00472 Lle_Intrinsic,
00473 Llt_Intrinsic,
00474 Loc_Intrinsic,
00475 Lock_Release_Intrinsic,
00476 Lock_Test_And_Set_Intrinsic,
00477 Log_Intrinsic,
00478 Log10_Intrinsic,
00479 Log2_Images_Intrinsic,
00480 Logical_Intrinsic,
00481 Long_Intrinsic,
00482 Lshift_Intrinsic,
00483 Mclr_Intrinsic,
00484 Mld_Intrinsic,
00485 Mldmx_Intrinsic,
00486 Mmx_Intrinsic,
00487 Mul_Intrinsic,
00488 Malloc_Intrinsic,
00489 Mask_Intrinsic,
00490 Matmul_Intrinsic,
00491 Max_Intrinsic,
00492 Max0_Intrinsic,
00493 Max1_Intrinsic,
00494 Maxexponent_Intrinsic,
00495 Maxloc_Intrinsic,
00496 Maxval_Intrinsic,
00497 Memory_Barrier_Intrinsic,
00498 Merge_Intrinsic,
00499 Min_Intrinsic,
00500 Min0_Intrinsic,
00501 Min1_Intrinsic,
00502 Minexponent_Intrinsic,
00503 Minloc_Intrinsic,
00504 Minval_Intrinsic,
00505 Mod_Intrinsic,
00506 Modulo_Intrinsic,
00507 Mvbits_Intrinsic,
00508 My_Pe_Intrinsic,
00509 Nand_And_Fetch_Intrinsic,
00510 Nearest_Intrinsic,
00511 Neqv_Intrinsic,
00512 Nint_Intrinsic,
00513 Not_Intrinsic,
00514 Null_Intrinsic,
00515 Numarg_Intrinsic,
00516 Num_Images_Intrinsic,
00517 Omp_Get_Dynamic_Intrinsic,
00518 Omp_Get_Max_Threads_Intrinsic,
00519 Omp_Get_Nested_Intrinsic,
00520 Omp_Get_Num_Procs_Intrinsic,
00521 Omp_Get_Num_Threads_Intrinsic,
00522 Omp_Get_Thread_Num_Intrinsic,
00523 Omp_In_Parallel_Intrinsic,
00524 Omp_Set_Lock_Intrinsic,
00525 Omp_Test_Lock_Intrinsic,
00526 Omp_Unset_Lock_Intrinsic,
00527 Or_Intrinsic,
00528 Or_And_Fetch_Intrinsic,
00529 Pack_Intrinsic,
00530 Popcnt_Intrinsic,
00531 Poppar_Intrinsic,
00532 Precision_Intrinsic,
00533 Present_Intrinsic,
00534 Product_Intrinsic,
00535 Qabs_Intrinsic,
00536 Qacos_Intrinsic,
00537 Qacosd_Intrinsic,
00538 Qasin_Intrinsic,
00539 Qasind_Intrinsic,
00540 Qatan_Intrinsic,
00541 Qatan2_Intrinsic,
00542 Qatan2d_Intrinsic,
00543 Qatand_Intrinsic,
00544 Qcmplx_Intrinsic,
00545 Qcos_Intrinsic,
00546 Qcosd_Intrinsic,
00547 Qcosh_Intrinsic,
00548 Qcot_Intrinsic,
00549 Qdim_Intrinsic,
00550 Qexp_Intrinsic,
00551 Qext_Intrinsic,
00552 Qfloat_Intrinsic,
00553 Qfloati_Intrinsic,
00554 Qfloatj_Intrinsic,
00555 Qfloatk_Intrinsic,
00556 Qimag_Intrinsic,
00557 Qint_Intrinsic,
00558 Qlog_Intrinsic,
00559 Qlog10_Intrinsic,
00560 Qmod_Intrinsic,
00561 Qnint_Intrinsic,
00562 Qprod_Intrinsic,
00563 Qreal_Intrinsic,
00564 Qsign_Intrinsic,
00565 Qsin_Intrinsic,
00566 Qsind_Intrinsic,
00567 Qsinh_Intrinsic,
00568 Qsqrt_Intrinsic,
00569 Qtan_Intrinsic,
00570 Qtand_Intrinsic,
00571 Qtanh_Intrinsic,
00572 Radix_Intrinsic,
00573 Ran_Intrinsic,
00574 Random_Number_Intrinsic,
00575 Random_Seed_Intrinsic,
00576 Randu_Intrinsic,
00577 Ranf_Intrinsic,
00578 Range_Intrinsic,
00579 Ranget_Intrinsic,
00580 Ranset_Intrinsic,
00581 Readsm_Intrinsic,
00582 Real_Intrinsic,
00583 Remote_Write_Barrier_Intrinsic,
00584 Rem_Images_Intrinsic,
00585 Repeat_Intrinsic,
00586 Reshape_Intrinsic,
00587 Rrspacing_Intrinsic,
00588 Rshift_Intrinsic,
00589 Rtc_Intrinsic,
00590 Scale_Intrinsic,
00591 Scan_Intrinsic,
00592 SIK_Intrinsic,
00593 SRK_Intrinsic,
00594 Set_Exponent_Intrinsic,
00595 Set_Ieee_Exception_Intrinsic,
00596 Set_Ieee_Exceptions_Intrinsic,
00597 Set_Ieee_Interrupts_Intrinsic,
00598 Set_Ieee_Rounding_Mode_Intrinsic,
00599 Set_Ieee_Status_Intrinsic,
00600 Shape_Intrinsic,
00601 Shift_Intrinsic,
00602 Shifta_Intrinsic,
00603 Shiftl_Intrinsic,
00604 Shiftr_Intrinsic,
00605 Short_Intrinsic,
00606 Sign_Intrinsic,
00607 Sin_Intrinsic,
00608 Sind_Intrinsic,
00609 Sinh_Intrinsic,
00610 Size_Intrinsic,
00611 Sizeof_Intrinsic,
00612 Sngl_Intrinsic,
00613 Snglq_Intrinsic,
00614 Spacing_Intrinsic,
00615 Spread_Intrinsic,
00616 Sqrt_Intrinsic,
00617 Sub_And_Fetch_Intrinsic,
00618 Sum_Intrinsic,
00619 Synchronize_Intrinsic,
00620 Sync_Images_Intrinsic,
00621 System_Clock_Intrinsic,
00622 Tan_Intrinsic,
00623 Tand_Intrinsic,
00624 Tanh_Intrinsic,
00625 Test_Ieee_Exception_Intrinsic,
00626 Test_Ieee_Interrupt_Intrinsic,
00627 This_Image_Intrinsic,
00628 Time_Intrinsic,
00629 Tiny_Intrinsic,
00630 Transfer_Intrinsic,
00631 Transpose_Intrinsic,
00632 Trim_Intrinsic,
00633 Ubound_Intrinsic,
00634 Unit_Intrinsic,
00635 Unpack_Intrinsic,
00636 Verify_Intrinsic,
00637 Write_Memory_Barrier_Intrinsic,
00638 Xor_Intrinsic,
00639 Xor_And_Fetch_Intrinsic
00640 };
00641
00642
00643
00644
00645
00646
00647
00648
00649
00650
00651
00652 enum linear_type_values {Err_Res,
00653 Type_Void = Err_Res,
00654 Short_Char_Const,
00655 Short_Typeless_Const,
00656 Typeless_1,
00657 Typeless_2,
00658 Typeless_4,
00659 Typeless_8,
00660 Long_Typeless,
00661 Integer_1,
00662 Integer_2,
00663 Integer_4,
00664 Integer_8,
00665 Real_4,
00666 Real_8,
00667 Real_16,
00668 Complex_4,
00669 Complex_8,
00670 Complex_16,
00671 CRI_Ptr_8,
00672 Logical_1,
00673 Logical_2,
00674 Logical_4,
00675 Logical_8,
00676 Character_1,
00677 Character_2,
00678 Character_4,
00679 CRI_Ch_Ptr_8,
00680 Structure_Type,
00681 CRI_Parcel_Ptr_8,
00682 Num_Linear_Types
00683 };
00684
00685 enum msg_lvl_values {Comment_Lvl,
00686 Note_Lvl,
00687 Caution_Lvl,
00688 Warning_Lvl,
00689 Error_Lvl };
00690
00691
00692
00693
00694
00695
00696
00697 enum msg_severities {Comment, Note, Caution,
00698 Warning, Error, Internal,
00699 Vector, Scalar, Table,
00700 Ansi, Log_Warning, Inline,
00701 Info, Tasking, Limit,
00702 Log_Error, Log_Summary, F77_Ansi,
00703 Optimization, Stream, Unknown_Error };
00704
00705
00706
00707
00708
00709
00710
00711
00712
00713
00714
00715
00716 enum obj_values {Obj_Assum_Type_Ch, Obj_Expl_Shp_Arr,
00717 Obj_Assum_Size_Arr, Obj_Defrd_Shp_Arr,
00718 Obj_Assum_Shp_Arr, Obj_Co_Array,
00719 Obj_Allocatable, Obj_Constant,
00720 Obj_Intent, Obj_Optional,
00721 Obj_Private, Obj_Public,
00722 Obj_Target, Obj_Equiv,
00723 Obj_Saved, Obj_Automatic,
00724 Obj_Pointer, Obj_Dcl_Extern,
00725 Obj_Dcl_Intrin, Obj_Data_Init,
00726 Obj_Typed, Obj_Volatile,
00727
00728 Obj_Copy_Assumed_Shape, Obj_Auxiliary,
00729 Obj_Vfunction, Obj_No_Side_Effects,
00730 Obj_Symmetric, Obj_Inline,
00731 Obj_Ipa, Obj_Align_Symbol,
00732 Obj_Fill_Symbol, Obj_Section_Gp,
00733 Obj_Section_Non_Gp, Obj_Ignore_TKR,
00734 Obj_Optional_Dir, Obj_Name,
00735
00736 Obj_Cri_Ptr, Obj_Cri_Pointee,
00737 Obj_Cri_Ch_Pointee,
00738 Obj_Ntry_Func_Result, Obj_Dummy_Arg,
00739 Obj_Common_Obj, Obj_Namelist_Obj,
00740 Obj_Module_Proc, Obj_Derived_Type,
00741 Obj_Generic_Interface, Obj_Namelist_Grp,
00742 Obj_Stmt_Func, Obj_Construct,
00743 Obj_Entry_Func, Obj_Entry_Subr,
00744 Obj_Intern_Func, Obj_Intern_Subr,
00745 Obj_Module_Func, Obj_Module_Subr,
00746 Obj_Sf_Darg,
00747 Obj_Name_Done = Obj_Sf_Darg,
00748
00749 Obj_Sf_Actual_Arg, Obj_Var_Len_Ch,
00750 Obj_Var_Len_Arr, Obj_Sym_Constant_Arr,
00751 Obj_Interface_Func, Obj_Interface_Subr,
00752 Obj_Use_Extern_Func, Obj_Use_Extern_Subr,
00753 Obj_Use_In_Expr, Obj_Use_Derived_Type,
00754 Obj_Use_Spec_Expr, Obj_Use_Init_Expr,
00755 Obj_Done };
00756
00757
00758
00759
00760
00761
00762
00763
00764
00765
00766
00767
00768
00769
00770 enum operator_values { Null_Opr,
00771
00772 Defined_Un_Opr,
00773
00774 Alloc_Opr,
00775 SSD_Alloc_Opr,
00776 Cvrt_Opr,
00777 Dealloc_Opr,
00778 Power_Opr,
00779 Mult_Opr,
00780 Div_Opr,
00781 Uplus_Opr,
00782 Uminus_Opr,
00783 Plus_Opr,
00784 Minus_Opr,
00785 Concat_Opr,
00786 Eq_Opr,
00787 Ne_Opr,
00788 Lt_Opr,
00789 Le_Opr,
00790 Gt_Opr,
00791 Ge_Opr,
00792 Not_Opr,
00793 Bnot_Opr,
00794 And_Opr,
00795 Or_Opr,
00796 Bor_Opr,
00797 Eqv_Opr,
00798
00799
00800
00801
00802
00803 Beqv_Opr,
00804 Neqv_Opr,
00805 Bneqv_Opr,
00806 Abs_Opr,
00807 Cos_Opr,
00808 Sin_Opr,
00809 Log_E_Opr,
00810 Log_10_Opr,
00811 Tan_Opr,
00812 Tanh_Opr,
00813 Sinh_Opr,
00814 Acos_Opr,
00815 Asin_Opr,
00816 Atan_Opr,
00817 Cosh_Opr,
00818 Atan2_Opr,
00819 Aimag_Opr,
00820 Sqrt_Opr,
00821 Cot_Opr,
00822 Exp_Opr,
00823 Int_Opr,
00824 Band_Opr,
00825 Mod_Opr,
00826 Anint_Opr,
00827 Nint_Opr,
00828
00829
00830
00831
00832
00833 Sign_Opr,
00834 Modulo_Opr,
00835 Shift_Opr,
00836 Shiftl_Opr,
00837 Shiftr_Opr,
00838 Leadz_Opr,
00839 Popcnt_Opr,
00840 Poppar_Opr,
00841 Aint_Opr,
00842 Dim_Opr,
00843 Ranget_Opr,
00844 Ranset_Opr,
00845 Ranf_Opr,
00846 Real_Opr,
00847 Dble_Opr,
00848 Mask_Opr,
00849 Conjg_Opr,
00850 Dprod_Opr,
00851 I24mult_Opr,
00852 Length_Opr,
00853 Getpos_Opr,
00854 Unit_Opr,
00855 Cmplx_Opr,
00856 Ichar_Opr,
00857 Char_Opr,
00858
00859
00860
00861
00862
00863 Lint_Opr,
00864 Index_Opr,
00865 Lge_Opr,
00866 Lgt_Opr,
00867 Lle_Opr,
00868 Llt_Opr,
00869 Fcd_Opr,
00870 Numarg_Opr,
00871 Rtc_Opr,
00872 Cvmgp_Opr,
00873 Cvmgm_Opr,
00874 Cvmgz_Opr,
00875 Cvmgn_Opr,
00876 Cvmgt_Opr,
00877 Csmg_Opr,
00878 Adjustl_Opr,
00879 Adjustr_Opr,
00880 Ceiling_Opr,
00881 Exponent_Opr,
00882 Floor_Opr,
00883 Fraction_Opr,
00884 Spacing_Opr,
00885 Logical_Opr,
00886 Nearest_Opr,
00887 Rrspacing_Opr,
00888
00889
00890
00891
00892
00893 Scale_Opr,
00894 Scan_Opr,
00895 Set_Exponent_Opr,
00896 Verify_Opr,
00897 Len_Trim_Opr,
00898 Dshiftl_Opr,
00899 Dshiftr_Opr,
00900 Mmx_Opr,
00901 Mldmx_Opr,
00902 Mld_Opr,
00903 Mul_Opr,
00904 Mcbl_Opr,
00905 Cshift_Opr,
00906 Dot_Product_Opr,
00907 Matmul_Opr,
00908 Spread_Opr,
00909 Transpose_Opr,
00910 All_Opr,
00911 Any_Opr,
00912 Count_Opr,
00913 Product_Opr,
00914 Sum_Opr,
00915 Eoshift_Opr,
00916 Maxval_Opr,
00917 Minval_Opr,
00918
00919
00920
00921
00922
00923 Maxloc_Opr,
00924 Minloc_Opr,
00925 Reshape_Opr,
00926 SRK_Opr,
00927 SIK_Opr,
00928 Repeat_Opr,
00929 Trim_Opr,
00930 Transfer_Opr,
00931
00932 Defined_Bin_Opr,
00933
00934 Asg_Opr,
00935 Call_Opr,
00936 Alt_Return_Opr,
00937 Case_Opr,
00938 Allocate_Opr,
00939 Deallocate_Opr,
00940 End_Opr,
00941 Entry_Opr,
00942 Nullify_Opr,
00943 Pause_Opr,
00944 Ptr_Asg_Opr,
00945 Flat_Array_Asg_Opr,
00946 Return_Opr,
00947 Select_Opr,
00948 Stmt_Func_Call_Opr,
00949 Stop_Opr,
00950
00951
00952
00953
00954
00955 Max_Opr,
00956 Min_Opr,
00957
00958 Read_Formatted_Opr,
00959 Read_Unformatted_Opr,
00960 Read_Namelist_Opr,
00961 Write_Formatted_Opr,
00962 Write_Unformatted_Opr,
00963 Write_Namelist_Opr,
00964 Inquire_Iolength_Opr,
00965
00966
00967
00968
00969
00970
00971
00972 Dv_Whole_Copy_Opr,
00973 Dv_Whole_Def_Opr,
00974 Dv_Def_Asg_Opr,
00975 Dv_Deref_Opr,
00976 Dv_Access_Base_Addr,
00977 Dv_Set_Base_Addr,
00978 Dv_Access_El_Len,
00979 Dv_Set_El_Len,
00980 Dv_Access_Assoc,
00981 Dv_Set_Assoc,
00982 Dv_Access_Ptr_Alloc,
00983 Dv_Set_Ptr_Alloc,
00984 Dv_Access_P_Or_A,
00985 Dv_Set_P_Or_A,
00986 Dv_Access_A_Contig,
00987 Dv_Set_A_Contig,
00988
00989
00990
00991
00992
00993 Dv_Access_N_Dim,
00994 Dv_Set_N_Dim,
00995 Dv_Access_Typ_Code,
00996 Dv_Set_Typ_Code,
00997 Dv_Access_Orig_Base,
00998 Dv_Set_Orig_Base,
00999 Dv_Access_Orig_Size,
01000 Dv_Set_Orig_Size,
01001
01002
01003
01004 Dv_Access_Low_Bound,
01005 Dv_Set_Low_Bound,
01006 Dv_Access_Extent,
01007 Dv_Set_Extent,
01008 Dv_Access_Stride_Mult,
01009 Dv_Set_Stride_Mult,
01010
01011 Br_Aif_Opr,
01012 Br_Asg_Opr,
01013 Br_Index_Opr,
01014 Br_True_Opr,
01015 Br_Uncond_Opr,
01016
01017 Case_Range_Opr,
01018 Implied_Do_Opr,
01019 Kwd_Opr,
01020 Percent_Val_Opr,
01021 Loc_Opr,
01022 Aloc_Opr,
01023
01024
01025
01026
01027
01028 Const_Tmp_Loc_Opr,
01029 Present_Opr,
01030 Argchck_Present_Opr,
01031 Argchck_Loc_Opr,
01032 Len_Opr,
01033 Clen_Opr,
01034 Paren_Opr,
01035 Struct_Opr,
01036 Struct_Construct_Opr,
01037 Array_Construct_Opr,
01038 Constant_Struct_Construct_Opr,
01039 Constant_Array_Construct_Opr,
01040 Subscript_Opr,
01041 Whole_Subscript_Opr,
01042 Section_Subscript_Opr,
01043 Alloc_Obj_Opr,
01044 Dealloc_Obj_Opr,
01045 Substring_Opr,
01046 Whole_Substring_Opr,
01047 Triplet_Opr,
01048 Label_Opr,
01049 Loop_Info_Opr,
01050 Loop_End_Opr,
01051 Init_Opr,
01052 Init_Reloc_Opr,
01053
01054
01055
01056
01057
01058 Use_Opr,
01059 Where_Opr,
01060 Real_Div_To_Int_Opr,
01061 Readsm_Opr,
01062 Memory_Barrier_Opr,
01063 Remote_Write_Barrier_Opr,
01064 Write_Memory_Barrier_Opr,
01065
01066 Suppress_Opr,
01067
01068 Align_Cdir_Opr,
01069 Bl_Cdir_Opr,
01070 Bounds_Cdir_Opr,
01071 Cachealign_Cdir_Opr,
01072 Inline_Cdir_Opr,
01073 Ivdep_Cdir_Opr,
01074 Nextscalar_Cdir_Opr,
01075 Nobl_Cdir_Opr,
01076 Nobounds_Cdir_Opr,
01077 Noinline_Cdir_Opr,
01078 Norecurrence_Cdir_Opr,
01079 Nosplit_Cdir_Opr,
01080 Notask_Cdir_Opr,
01081 Nounroll_Cdir_Opr,
01082 Novector_Cdir_Opr,
01083 Novsearch_Cdir_Opr,
01084 Prefertask_Cdir_Opr,
01085
01086
01087
01088
01089
01090 Prefervector_Cdir_Opr,
01091 Recurrence_Cdir_Opr,
01092 Shortloop_Cdir_Opr,
01093 Shortloop128_Cdir_Opr,
01094 Split_Cdir_Opr,
01095 Task_Cdir_Opr,
01096 Unroll_Cdir_Opr,
01097 Vector_Cdir_Opr,
01098 Vsearch_Cdir_Opr,
01099
01100 Case_Cmic_Opr,
01101 Endcase_Cmic_Opr,
01102 Cncall_Cmic_Opr,
01103 Continue_Cmic_Opr,
01104 Doall_Cmic_Opr,
01105 Doparallel_Cmic_Opr,
01106 Enddo_Cmic_Opr,
01107 Guard_Cmic_Opr,
01108 Endguard_Cmic_Opr,
01109 REMOVED_Opr,
01110 Numcpus_Cmic_Opr,
01111 Parallel_Cmic_Opr,
01112 Endparallel_Cmic_Opr,
01113 Permutation_Cmic_Opr,
01114 Taskcommon_Cmic_Opr,
01115 Wait_Cmic_Opr,
01116
01117
01118
01119
01120
01121 Send_Cmic_Opr,
01122
01123 My_Pe_Opr,
01124
01125 Ieee_Unordered_Opr,
01126 Ieee_Next_After_Opr,
01127 Ieee_Remainder_Opr,
01128 Ieee_Exponent_Opr,
01129 Ieee_Copy_Sign_Opr,
01130 Ieee_Int_Opr,
01131 Ieee_Real_Opr,
01132 Ieee_Finite_Opr,
01133 Ieee_Is_Nan_Opr,
01134 Ieee_Class_Opr,
01135 Ieee_Binary_Scale_Opr,
01136 Int_Mult_Upper_Opr,
01137 Get_Ieee_Status_Opr,
01138 Set_Ieee_Status_Opr,
01139 Get_Ieee_Exceptions_Opr,
01140 Set_Ieee_Exceptions_Opr,
01141 Get_Ieee_Interrupts_Opr,
01142 Set_Ieee_Interrupts_Opr,
01143 Get_Ieee_Rounding_Mode_Opr,
01144 Set_Ieee_Rounding_Mode_Opr,
01145 Test_Ieee_Interrupt_Opr,
01146 Test_Ieee_Exception_Opr,
01147 Set_Ieee_Exception_Opr,
01148
01149
01150
01151
01152
01153 Clear_Ieee_Exception_Opr,
01154 Enable_Ieee_Interrupt_Opr,
01155 Disable_Ieee_Interrupt_Opr,
01156
01157 Cvrt_Unsigned_Opr,
01158 SSD_Dealloc_Opr,
01159
01160
01161
01162 Symbolic_Mult_Opr,
01163 Symbolic_Div_Opr,
01164 Symbolic_Uplus_Opr,
01165 Symbolic_Uminus_Opr,
01166 Symbolic_Plus_Opr,
01167 Symbolic_Minus_Opr,
01168 Symbolic_Max_Opr,
01169
01170 Rep_Count_Opr,
01171 Lg_Opr,
01172 Shifta_Opr,
01173
01174 Symbolic_Mod_Opr,
01175 Symbolic_Shiftr_Opr,
01176 Symbolic_Shiftl_Opr,
01177 Symmetric_Alloc_Opr,
01178 Symmetric_Dealloc_Opr,
01179
01180 Copy_In_Opr,
01181 Copy_Out_Opr,
01182
01183 Pack_Opr,
01184 Unpack_Opr,
01185
01186 Local_Pe_Dim_Opr,
01187
01188
01189
01190
01191
01192 Start_Io_Opr,
01193 End_Io_Opr,
01194
01195 Dot_Product_Logical_Opr,
01196
01197 Symbolic_Min_Opr,
01198 Nopattern_Cdir_Opr,
01199 Pattern_Cdir_Opr,
01200 Mark_Cdir_Opr,
01201 Nomark_Cdir_Opr,
01202
01203 Backspace_Opr,
01204 Buffer_In_Opr,
01205 Buffer_Out_Opr,
01206 Close_Opr,
01207 Endfile_Opr,
01208 Inquire_Opr,
01209 Open_Opr,
01210 Rewind_Opr,
01211 Mvbits_Opr,
01212 Ishftc_Opr,
01213 Ibits_Opr,
01214
01215 False_Parm_Opr,
01216
01217 Aggressiveinnerloopfission_Opr,
01218 Blockable_Dir_Opr,
01219 Blockingsize_Dir_Opr,
01220 Fission_Star_Opr,
01221 Fissionable_Star_Opr,
01222
01223
01224
01225
01226
01227 Fuse_Star_Opr,
01228 Fusable_Star_Opr,
01229 Interchange_Dir_Opr,
01230 Nointerchange_Dir_Opr,
01231 Nofission_Star_Opr,
01232 Nofusion_Star_Opr,
01233 Noblocking_Dir_Opr,
01234 Opaque_Star_Opr,
01235 Purpleconditional_Star_Opr,
01236 Purpleunconditional_Star_Opr,
01237 Redistribute_Dollar_Opr,
01238 Doacross_Dollar_Opr,
01239 Pdo_Par_Opr,
01240 Parallel_Do_Par_Opr,
01241 Parallel_Par_Opr,
01242 Psection_Par_Opr,
01243 Singleprocess_Par_Opr,
01244 Section_Par_Opr,
01245 End_Pdo_Par_Opr,
01246 End_Parallel_Par_Opr,
01247 Barrier_Par_Opr,
01248 Critical_Section_Par_Opr,
01249 End_Critical_Section_Par_Opr,
01250 End_Psection_Par_Opr,
01251 End_Singleprocess_Par_Opr,
01252
01253
01254
01255
01256
01257 Unroll_Star_Opr,
01258 Assert_Star_Opr,
01259 Regionbegin_Star_Opr,
01260 Regionend_Star_Opr,
01261 Section_Gp_Star_Opr,
01262 Section_Nongp_Star_Opr,
01263
01264 Prefetch_Star_Opr,
01265 Prefetch_Manual_Star_Opr,
01266 Prefetch_Ref_Disable_Star_Opr,
01267 Prefetch_Ref_Star_Opr,
01268
01269 Align_Symbol_Star_Opr,
01270 Fill_Symbol_Star_Opr,
01271
01272 Inline_Here_Star_Opr,
01273 Noinline_Here_Star_Opr,
01274 End_Inline_Here_Star_Opr,
01275
01276 Dynamic_Dollar_Opr,
01277 Page_Place_Dollar_Opr,
01278 Copyin_Dollar_Opr,
01279
01280 User_Code_Start_Opr,
01281
01282 Fetch_And_Add_Opr,
01283 Fetch_And_Sub_Opr,
01284 Fetch_And_Or_Opr,
01285 Fetch_And_And_Opr,
01286 Fetch_And_Xor_Opr,
01287 Fetch_And_Nand_Opr,
01288
01289
01290
01291
01292
01293 Add_And_Fetch_Opr,
01294 Sub_And_Fetch_Opr,
01295 Or_And_Fetch_Opr,
01296 And_And_Fetch_Opr,
01297 Xor_And_Fetch_Opr,
01298 Nand_And_Fetch_Opr,
01299
01300 Synchronize_Opr,
01301 Lock_Release_Opr,
01302 Lock_Test_And_Set_Opr,
01303 Compare_And_Swap_Opr,
01304
01305 Integer_Cdir_Opr,
01306
01307 Malloc_Opr,
01308 Free_Opr,
01309
01310 Concurrent_Cdir_Opr,
01311
01312 Inline_Routine_Star_Opr,
01313 Noinline_Routine_Star_Opr,
01314 Inline_Global_Star_Opr,
01315 Noinline_Global_Star_Opr,
01316
01317 Atomic_Open_Mp_Opr,
01318 Barrier_Open_Mp_Opr,
01319 Critical_Open_Mp_Opr,
01320 Do_Open_Mp_Opr,
01321 Endcritical_Open_Mp_Opr,
01322 Enddo_Open_Mp_Opr,
01323 Endparallel_Open_Mp_Opr,
01324
01325
01326
01327
01328
01329 Endparalleldo_Open_Mp_Opr,
01330 Endparallelsections_Open_Mp_Opr,
01331 Endmaster_Open_Mp_Opr,
01332 Endordered_Open_Mp_Opr,
01333 Endsections_Open_Mp_Opr,
01334 Endsingle_Open_Mp_Opr,
01335 Flush_Open_Mp_Opr,
01336 Master_Open_Mp_Opr,
01337 Ordered_Open_Mp_Opr,
01338 Parallel_Open_Mp_Opr,
01339 Paralleldo_Open_Mp_Opr,
01340 Parallelsections_Open_Mp_Opr,
01341 Section_Open_Mp_Opr,
01342 Sections_Open_Mp_Opr,
01343 Single_Open_Mp_Opr,
01344
01345 Concurrentize_Star_Opr,
01346 Noconcurrentize_Star_Opr,
01347
01348 Omp_Set_Lock_Opr,
01349 Omp_Unset_Lock_Opr,
01350 Omp_Test_Lock_Opr,
01351
01352 Omp_Get_Num_Threads_Opr,
01353 Omp_Get_Max_Threads_Opr,
01354 Omp_Get_Thread_Num_Opr,
01355 Omp_Get_Num_Procs_Opr,
01356 Omp_In_Parallel_Opr,
01357
01358
01359
01360
01361
01362 Omp_Get_Dynamic_Opr,
01363 Omp_Get_Nested_Opr,
01364
01365 Cache_Bypass_Cdir_Opr,
01366
01367 Forall_Opr,
01368 If_Opr,
01369 Else_Opr,
01370 Endif_Opr,
01371
01372 Flush_Star_Opr,
01373 Stmt_Expansion_Opr,
01374
01375 Cosd_Opr,
01376 Sind_Opr,
01377 Tand_Opr,
01378 Acosd_Opr,
01379 Asind_Opr,
01380 Atand_Opr,
01381 Atan2d_Opr,
01382
01383 Stream_Dir_Opr,
01384 UNUSED1_Opr,
01385 UNUSED2_Opr,
01386 UNUSED3_Opr,
01387 UNUSED4_Opr,
01388 UNUSED5_Opr,
01389 Nostream_Dir_Opr,
01390
01391 Null_Intrinsic_Opr,
01392 Io_Item_Type_Code_Opr,
01393
01394
01395
01396
01397
01398 Where_Cnstrct_Opr,
01399 Else_Where_Mask_Opr,
01400 Else_Where_Opr,
01401
01402 Preferstream_Dir_Opr,
01403
01404 Copyin_Bound_Opr,
01405
01406 Preferstream_Nocinv_Dir_Opr,
01407
01408
01409 Endparallelworkshare_Open_Mp_Opr,
01410 Endworkshare_Open_Mp_Opr,
01411 Parallelworkshare_Open_Mp_Opr,
01412 Workshare_Open_Mp_Opr,
01413
01414
01415 XXX_OpenAD_Opr,
01416 Dependent_OpenAD_Opr,
01417 Independent_OpenAD_Opr,
01418 Simple_OpenAD_Opr,
01419 EndSimple_OpenAD_Opr,
01420
01421
01422
01423 The_Last_Opr
01424 };
01425
01426 enum scalar_lvl_values {Scalar_Lvl_0,
01427 Scalar_Lvl_1,
01428 Scalar_Lvl_2,
01429 Scalar_Lvl_3,
01430 Scalar_Lvl_Err };
01431
01432 enum sh_position_values {Before, After};
01433
01434
01435 enum src_form_values {Fixed_Form, Free_Form };
01436
01437
01438
01439
01440
01441
01442
01443
01444
01445
01446
01447
01448
01449
01450
01451
01452
01453
01454
01455 enum stmt_type_values {Null_Stmt,
01456
01457 Allocatable_Stmt,
01458 Automatic_Stmt,
01459 Common_Stmt,
01460 Contains_Stmt,
01461 Cpnt_Decl_Stmt,
01462 Data_Stmt,
01463 Derived_Type_Stmt,
01464 Dimension_Stmt,
01465 Directive_Stmt,
01466 Equivalence_Stmt,
01467 External_Stmt,
01468 Format_Stmt,
01469 Implicit_Stmt,
01470 Implicit_None_Stmt,
01471 Intent_Stmt,
01472 Interface_Stmt,
01473 Intrinsic_Stmt,
01474 Module_Proc_Stmt,
01475 Namelist_Stmt,
01476 Optional_Stmt,
01477 Parameter_Stmt,
01478 Pointer_Stmt,
01479 Private_Stmt,
01480 Public_Stmt,
01481 Save_Stmt,
01482 Sequence_Stmt,
01483 Stmt_Func_Stmt,
01484 Target_Stmt,
01485 Task_Common_Stmt,
01486 Type_Decl_Stmt,
01487 Use_Stmt,
01488
01489 Blockdata_Stmt,
01490 Elemental_Stmt,
01491 Function_Stmt,
01492 Module_Stmt,
01493 Program_Stmt,
01494 Pure_Stmt,
01495 Recursive_Stmt,
01496 Subroutine_Stmt,
01497
01498 End_Blockdata_Stmt,
01499 End_Do_Stmt,
01500 End_Function_Stmt,
01501 End_If_Stmt,
01502 End_Interface_Stmt,
01503 End_Module_Stmt,
01504 End_Program_Stmt,
01505 End_Select_Stmt,
01506 End_Stmt,
01507 End_Subroutine_Stmt,
01508 End_Type_Stmt,
01509 End_Where_Stmt,
01510
01511 Allocate_Stmt,
01512 Arith_If_Stmt,
01513 Assign_Stmt,
01514 Assignment_Stmt,
01515 Backspace_Stmt,
01516 Buffer_Stmt,
01517 Call_Stmt,
01518 Case_Stmt,
01519 Close_Stmt,
01520 Continue_Stmt,
01521 Cycle_Stmt,
01522 Deallocate_Stmt,
01523 Decode_Stmt,
01524 Do_Iterative_Stmt,
01525 Do_While_Stmt,
01526 Do_Infinite_Stmt,
01527 Else_Stmt,
01528 Else_If_Stmt,
01529 Else_Where_Stmt,
01530 Encode_Stmt,
01531 Endfile_Stmt,
01532 Entry_Stmt,
01533 Exit_Stmt,
01534 Goto_Stmt,
01535 If_Cstrct_Stmt,
01536 If_Stmt,
01537 Inquire_Stmt,
01538 Nullify_Stmt,
01539 Open_Stmt,
01540 Outmoded_If_Stmt,
01541 Pause_Stmt,
01542 Print_Stmt,
01543 Read_Stmt,
01544 Return_Stmt,
01545 Rewind_Stmt,
01546 Select_Stmt,
01547 Stop_Stmt,
01548 Then_Stmt,
01549 Where_Cstrct_Stmt,
01550 Where_Stmt,
01551 Write_Stmt,
01552 Type_Init_Stmt,
01553
01554 Label_Def,
01555 Construct_Def,
01556
01557 Automatic_Base_Calc_Stmt,
01558 Automatic_Base_Size_Stmt,
01559
01560 End_Parallel_Stmt,
01561 End_Do_Parallel_Stmt,
01562 End_Parallel_Case_Stmt,
01563 Parallel_Case_Stmt,
01564 End_Guard_Stmt,
01565
01566 Statement_Num_Stmt,
01567
01568 SGI_Section_Stmt,
01569 SGI_End_Psection_Stmt,
01570 SGI_End_Pdo_Stmt,
01571 SGI_End_Parallel_Stmt,
01572 SGI_End_Critical_Section_Stmt,
01573 SGI_End_Single_Process_Stmt,
01574 SGI_Region_End_Stmt,
01575
01576 Open_MP_Section_Stmt,
01577 Open_MP_End_Parallel_Stmt,
01578 Open_MP_End_Do_Stmt,
01579 Open_MP_End_Parallel_Sections_Stmt,
01580 Open_MP_End_Sections_Stmt,
01581 Open_MP_End_Section_Stmt,
01582 Open_MP_End_Single_Stmt,
01583 Open_MP_End_Parallel_Do_Stmt,
01584 Open_MP_End_Master_Stmt,
01585 Open_MP_End_Critical_Stmt,
01586 Open_MP_End_Ordered_Stmt,
01587 Open_MP_End_Parallel_Workshare_Stmt,
01588 Open_MP_End_Workshare_Stmt,
01589
01590 Forall_Cstrct_Stmt,
01591 Forall_Stmt,
01592 End_Forall_Stmt,
01593
01594 Else_Where_Mask_Stmt,
01595
01596 Volatile_Stmt
01597
01598
01599
01600
01601
01602
01603
01604
01605
01606 };
01607
01608
01609 enum split_lvl_values { Split_Lvl_0,
01610 Split_Lvl_1,
01611 Split_Lvl_2,
01612 Split_Lvl_Err };
01613
01614 enum stream_lvl_values { Stream_Lvl_0,
01615 Stream_Lvl_1,
01616 Stream_Lvl_2,
01617 Stream_Lvl_3,
01618 Stream_Lvl_Err };
01619
01620 enum task_lvl_values { Task_Lvl_0,
01621 Task_Lvl_1,
01622 Task_Lvl_2,
01623 Task_Lvl_3,
01624 Task_Lvl_Err };
01625
01626 enum unroll_lvl_values { Unroll_Lvl_0,
01627 Unroll_Lvl_1,
01628 Unroll_Lvl_2,
01629 Unroll_Lvl_Err };
01630
01631 enum vector_lvl_values { Vector_Lvl_0,
01632 Vector_Lvl_1,
01633 Vector_Lvl_2,
01634 Vector_Lvl_3,
01635 Vector_Lvl_Err };
01636
01637 enum trace_values { Func_Entry,
01638 Func_Exit,
01639 Syntax_Pass,
01640 Semantics_Pass,
01641 PU_Start,
01642 Stmt_Start,
01643 Mem_Alloc,
01644 Mem_Realloc,
01645 Mem_Free,
01646 Mem_Compress };
01647
01648 enum mp_directive_values {
01649 Doacross,
01650 Pdo,
01651 Parallel_Do,
01652 Parallel,
01653 Psection,
01654 Singleprocess,
01655 Num_Mp_Values
01656 };
01657
01658 typedef enum mp_directive_values mp_directive_type;
01659
01660 enum mp_clause_values {
01661 If_Clause,
01662 Local_Clause,
01663 Share_Clause,
01664 Lastlocal_Clause,
01665 Reduction_Clause,
01666 Mp_Schedtype_Clause,
01667 Chunk_Clause,
01668 Blocked_Clause,
01669 Affinity_Clause,
01670 Mode_Clause,
01671 Ordered_Clause,
01672 Onto_Clause,
01673 Nest_Clause,
01674 Lastthread_Clause,
01675 Last_Clause
01676 };
01677 typedef enum mp_clause_values mp_clause_type;
01678
01679 extern char *(mp_dir_str[Num_Mp_Values]);
01680
01681 extern boolean clause_allowed[Num_Mp_Values][Last_Clause];
01682
01683 enum open_mp_directive_values {
01684 Parallel_Omp,
01685 Do_Omp,
01686 Sections_Omp,
01687 Single_Omp,
01688 Parallel_Do_Omp,
01689 Parallel_Sections_Omp,
01690 Parallel_Workshare_Omp,
01691 End_Single_Omp,
01692 Flush_Omp,
01693 Num_Omp_Values
01694 };
01695
01696 typedef enum open_mp_directive_values open_mp_directive_type;
01697
01698 enum open_mp_clause_values {
01699 If_Omp_Clause,
01700 Private_Omp_Clause,
01701 Shared_Omp_Clause,
01702 Firstprivate_Omp_Clause,
01703 Default_Omp_Clause,
01704 Copyin_Omp_Clause,
01705 Reduction_Omp_Clause,
01706 Lastprivate_Omp_Clause,
01707 Ordered_Omp_Clause,
01708 Schedule_Omp_Clause,
01709 Copyprivate_Omp_Clause,
01710 Affinity_Omp_Clause,
01711 Nest_Omp_Clause,
01712 Onto_Omp_Clause,
01713
01714
01715 Flush_Omp_Clause,
01716 Last_Omp_Clause
01717 };
01718 typedef enum open_mp_clause_values open_mp_clause_type;
01719
01720 extern char *(open_mp_dir_str[Num_Omp_Values]);
01721
01722 extern boolean open_mp_clause_allowed[Num_Omp_Values][Last_Omp_Clause];
01723
01724
01725
01726 enum openad_directive_values {
01727 XXX_OpenAD,
01728 Dependent_OpenAD,
01729 Independent_OpenAD,
01730 Simple_OpenAD,
01731 EndSimple_OpenAD,
01732 Num_OpenAD_Values
01733 };
01734
01735 typedef enum openad_directive_values openad_directive_type;
01736
01737 enum openad_clause_values {
01738 XXX_OpenAD_Clause,
01739 Last_OpenAD_Clause
01740 };
01741 typedef enum openad_clause_values openad_clause_type;
01742
01743 extern char *(openad_dir_str[Num_OpenAD_Values]);
01744
01745 extern boolean openad_clause_allowed[Num_OpenAD_Values][Last_OpenAD_Clause];
01746
01747
01748 typedef enum addr_mode_values addr_mode_type;
01749 typedef enum basic_type_values basic_type_type;
01750 typedef enum convert_to_string_values convert_to_string_type;
01751 typedef enum debug_lvl_values debug_lvl_type;
01752 typedef enum expr_mode_values expr_mode_type;
01753 typedef enum fld_values fld_type;
01754 typedef enum fortran_type_values fortran_type_type;
01755 typedef enum forward_ref_values forward_ref_type;
01756 typedef enum glb_tbl_idx_values glb_tbl_idx_type;
01757 typedef enum intrinsic_values intrinsic_type;
01758 typedef enum linear_type_values linear_type_type;
01759 typedef enum msg_lvl_values msg_lvl_type;
01760 typedef enum msg_severities msg_severities_type;
01761 typedef enum obj_values obj_type;
01762 typedef enum operator_values operator_type;
01763 typedef enum scalar_lvl_values scalar_lvl_type;
01764 typedef enum sh_position_values sh_position_type;
01765 typedef enum src_form_values src_form_type;
01766 typedef enum stmt_type_values stmt_type_type;
01767 typedef enum stream_lvl_values stream_lvl_type;
01768 typedef enum task_lvl_values task_lvl_type;
01769 typedef enum vector_lvl_values vector_lvl_type;
01770 typedef enum trace_values trace_type;
01771 typedef struct ac_cmd_line_flags_entry ac_cmd_line_flags_type;
01772 typedef struct cdir_switch_entry cdir_switch_type;
01773 typedef struct cmd_line_flags_entry cmd_line_flags_type;
01774 typedef struct dump_flags_entry dump_flags_type;
01775 typedef struct expr_semantics_args expr_arg_type;
01776 typedef struct on_off_flags_entry on_off_flags_type;
01777 typedef struct opnd_entry opnd_type;
01778 typedef struct opt_flags_entry opt_flags_type;
01779 typedef union target_machine_entry target_machine_type;
01780 typedef union id_str_entry id_str_type;
01781
01782
01783 union id_str_entry {char string[MAX_ID_LEN+1];
01784 long words[NUM_ID_WDS];
01785 };
01786
01787
01788
01789 struct cmd_line_flags_entry {
01790 boolean align8 : 1;
01791 boolean align16 : 1;
01792 boolean align32 : 1;
01793 boolean align64 : 1;
01794 boolean static_threadprivate : 1;
01795 boolean dalign : 1;
01796 boolean pad : 1;
01797 Uint pad_amount : 16;
01798 boolean taskcommon : 1;
01799 boolean binary_output : 1;
01800 boolean reserved_c : 1;
01801 boolean off_options : 1;
01802 boolean on_options : 1;
01803 src_form_type src_form : 2;
01804 boolean reserved_g : 1;
01805 boolean reserved_h : 1;
01806 boolean integer_32 : 1;
01807 boolean reserved_j : 1;
01808 boolean solaris_profile : 1;
01809 boolean reserved_l : 1;
01810 msg_lvl_type msg_lvl_suppressed : 4;
01811 boolean reserved_n : 1;
01812 boolean reserved_o : 1;
01813 boolean module_paths : 1;
01814 boolean expression_eval_stmt : 1;
01815 boolean expression_eval_expr : 1;
01816 boolean reserved_q : 1;
01817 boolean reserved_r : 1;
01818 boolean s_float64 : 1;
01819 boolean s_default32 : 1;
01820 boolean s_default64 : 1;
01821 boolean s_cf77types : 1;
01822 boolean s_integer8 : 1;
01823 boolean s_logical8 : 1;
01824 boolean s_real8 : 1;
01825 boolean s_complex8 : 1;
01826 boolean s_doublecomplex16 : 1;
01827 boolean s_doubleprecision16 : 1;
01828 boolean s_pointer8 : 1;
01829 Uint truncate_bits : 6;
01830 boolean dump_options : 1;
01831 boolean pdgcs_debug_opts : 1;
01832 boolean reserved_w : 1;
01833 boolean disregard_all_directives: 1;
01834 boolean disregard_all_dirs : 1;
01835 boolean disregard_all_mics : 1;
01836 boolean disregard_all_mips : 1;
01837 boolean disregard_all_mpp_cdirs : 1;
01838 boolean disregard_all_omps : 1;
01839 boolean disregard_conditional_omp : 1;
01840
01841 boolean disregard_all_openads : 1;
01842 boolean reserved_y : 1;
01843 boolean cleanUpWhirl : 1;
01844 int implicit_use_idx;
01845 boolean reserved_B : 1;
01846 boolean cif_flags : 1;
01847 boolean reserved_D : 1;
01848 boolean reserved_E : 1;
01849 boolean pp_macro_expansion : 1;
01850 debug_lvl_type debug_lvl : 4;
01851 boolean dwarf_debug : 1;
01852 boolean reserved_H : 1;
01853 boolean reserved_I : 1;
01854 boolean mod_out_path : 1;
01855 boolean reserved_K : 1;
01856 boolean reserved_L : 1;
01857 Uint num_msgs_suppressed : 16;
01858 boolean line_size_80 : 1;
01859 boolean line_size_132 : 1;
01860 boolean opt_options : 1;
01861 boolean small_pic_model : 1;
01862 boolean large_pic_model : 1;
01863 boolean reserved_Q : 1;
01864 boolean runtime_argument : 1;
01865 boolean runtime_arg_call : 1;
01866 boolean runtime_arg_entry : 1;
01867 boolean runtime_arg_count_only : 1;
01868 boolean runtime_bounds : 1;
01869 boolean runtime_conformance : 1;
01870 boolean runtime_intrinsics : 1;
01871 boolean runtime_substring : 1;
01872 boolean runtime_ptr_chk : 1;
01873 boolean assembly_output : 1;
01874 boolean reserved_T : 1;
01875 boolean reserved_U : 1;
01876 boolean verify_option : 1;
01877 boolean reserved_W : 1;
01878 Uint MPP_num_pes :32;
01879 boolean malleable : 1;
01880 boolean ccg_dump_options : 1;
01881 boolean co_array_fortran : 1;
01882 boolean do_UDB_checks : 1;
01883 };
01884
01885 struct ac_cmd_line_flags_entry {
01886 Uint temp_fchar_len : 3;
01887 Uint ghand_create_count : 3;
01888 };
01889
01890
01891 struct dump_flags_entry {
01892
01893
01894
01895 boolean abort_on_ansi : 1;
01896 boolean no_dimension_padding : 1;
01897 boolean no_module_output : 1;
01898 boolean preinline : 1;
01899 boolean f_minus_minus : 1;
01900 boolean fmm1 : 1;
01901 boolean fmm2 : 1;
01902 boolean show_cmd_line : 1;
01903 boolean mod_version : 1;
01904 boolean mp : 1;
01905 boolean open_mp : 1;
01906 boolean dsm : 1;
01907 boolean cray_compatible : 1;
01908 boolean pack_half_word : 1;
01909 int pvp_test;
01910
01911
01912
01913 boolean bd_tbl : 1;
01914 boolean blk_stk : 1;
01915 boolean cmd_line_tbls : 1;
01916 boolean cn_tbl : 1;
01917 boolean defines : 1;
01918 boolean fort_out : 1;
01919 boolean fortran_out : 1;
01920 boolean fp_tbl : 1;
01921 boolean ftrace_info : 1;
01922 boolean gl_tbl : 1;
01923 boolean help_dbg : 1;
01924 boolean intrin_tbl : 1;
01925 boolean ir1_tbl : 1;
01926 boolean ir2_tbl : 1;
01927 boolean ir3_tbl : 1;
01928 boolean ir4_tbl : 1;
01929 boolean mem_report : 1;
01930 boolean msg_checking : 1;
01931 boolean mtrace_info : 1;
01932 boolean name_tbls : 1;
01933 boolean pdgcs : 1;
01934 boolean pdt_dump : 1;
01935 boolean sb_tbl : 1;
01936 boolean scp_tbl : 1;
01937 boolean src_dmp : 1;
01938 boolean std_err : 1;
01939 boolean stmt_dmp : 1;
01940 boolean sytb : 1;
01941 boolean typ_tbl : 1;
01942 boolean constant_bits : 1;
01943 };
01944
01945
01946 struct on_off_flags_entry {
01947 boolean abort_if_any_errors : 1;
01948 boolean reserved_b : 1;
01949 boolean pad_char_literals : 1;
01950 boolean reserved_d : 1;
01951 boolean ieee : 1;
01952 boolean flowtrace_option : 1;
01953 boolean assembly_listing_file : 1;
01954 boolean integer_1_and_2 : 1;
01955 boolean indef_init : 1;
01956 boolean exec_doloops_once : 1;
01957 boolean reserved_k : 1;
01958 boolean reserved_l : 1;
01959 boolean module_to_mod : 1;
01960 boolean issue_ansi_messages : 1;
01961 boolean reserved_o : 1;
01962 boolean enable_double_precision : 1;
01963 boolean abort_on_100_errors : 1;
01964 boolean round_mult_operations : 1;
01965 boolean reserved_s : 1;
01966 boolean alloc_autos_on_stack : 1;
01967 boolean eu : 1;
01968 boolean round_integer_divide : 1;
01969 boolean reciprical_divide : 1;
01970 boolean save_all_vars : 1;
01971 boolean set_ev_option : 1;
01972 boolean reserved_w : 1;
01973 boolean reserved_x : 1;
01974 boolean reserved_y : 1;
01975 boolean recognize_minus_zero : 1;
01976 boolean MPP_apprentice : 1;
01977 boolean binary_output : 1;
01978 boolean shared_to_private_coer : 1;
01979 boolean all_debug : 1;
01980 boolean reserved_E : 1;
01981 boolean reserved_F : 1;
01982 boolean reserved_G : 1;
01983 boolean reserved_H : 1;
01984 boolean implicit_none : 1;
01985 boolean