Open64 (mfef90, whirl2f, and IR tools)  TAG: version-openad; SVN changeset: 916
s_call.h
Go to the documentation of this file.
00001 /*
00002 
00003   Copyright (C) 2000, 2001 Silicon Graphics, Inc.  All Rights Reserved.
00004 
00005   This program is free software; you can redistribute it and/or modify it
00006   under the terms of version 2 of the GNU General Public License as
00007   published by the Free Software Foundation.
00008 
00009   This program is distributed in the hope that it would be useful, but
00010   WITHOUT ANY WARRANTY; without even the implied warranty of
00011   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  
00012 
00013   Further, this software is distributed without any warranty that it is
00014   free of the rightful claim of any third person regarding infringement 
00015   or the like.  Any license provided herein, whether implied or 
00016   otherwise, applies only to this software file.  Patent licenses, if 
00017   any, provided herein do not apply to combinations of this program with 
00018   other software, or any other product whatsoever.  
00019 
00020   You should have received a copy of the GNU General Public License along
00021   with this program; if not, write the Free Software Foundation, Inc., 59
00022   Temple Place - Suite 330, Boston MA 02111-1307, USA.
00023 
00024   Contact information:  Silicon Graphics, Inc., 1600 Amphitheatre Pky,
00025   Mountain View, CA 94043, or:
00026 
00027   http://www.sgi.com
00028 
00029   For further information regarding this notice, see:
00030 
00031   http://oss.sgi.com/projects/GenInfo/NoticeExplan
00032 
00033 */
00034 
00035 
00036 
00037 /* USMID:  "\n@(#)5.0_pl/headers/s_call.h       5.1     04/29/99 21:22:31\n" */
00038 
00039 /***********************************************************\
00040 |* These are the definitions for runtime argument checking *|
00041 |* descriptors. They must remain identical to the defs in  *|
00042 |* argchck.c in libf90. DO NOT CHANGE THESE!!!             *|
00043 \***********************************************************/
00044 
00045 enum            arg_type_values {
00046                                 Null_Arg,
00047                                 Short_Integer_Arg,
00048                                 Long_Integer_Arg,
00049                                 Real_Arg,
00050                                 Double_Arg,
00051                                 Complex_Arg,
00052                                 Logical_Arg,
00053                                 Character_Arg,
00054                                 Pointer_Arg,
00055                                 Typeless_Arg,
00056                                 Character_Pointer_Arg,
00057                                 Label_Arg,
00058                                 Subroutine_Arg,
00059                                 Null_Function_Arg,
00060                                 Short_Integer_Function_Arg,
00061                                 Long_Integer_Function_Arg,
00062                                 Real_Function_Arg,
00063                                 Double_Function_Arg,
00064                                 Complex_Function_Arg,
00065                                 Logical_Function_Arg,
00066                                 Character_Function_Arg,
00067                                 Pointer_Function_Arg,
00068                                 Typeless_Function_Arg,
00069                                 Character_Pointer_Function_Arg,
00070                                 Subprogram_Arg,
00071                                 Derived_Type_Arg,
00072                                 Derived_Type_Function_Arg };
00073 
00074 typedef enum    arg_type_values arg_type_type;
00075 
00076 struct          arg_desc_header {
00077                                 unsigned int            seen_this   :  1;
00078                                 unsigned int            f90_flag    :  1;
00079                                 unsigned int            num_ck_only :  1;
00080                                 unsigned int            suppress_msg:  1;
00081                                 unsigned int            unused1     :  4;
00082 # ifdef _TARGET64
00083                                 unsigned int            unused2     : 24;
00084                                 unsigned int            unused3     :  8;
00085 # endif
00086                                 unsigned int            arg_count   : 24;
00087                                 };
00088 
00089 typedef struct arg_desc_header arg_desc_header_type;
00090 
00091 struct          arg_desc_node   {
00092                                 long_type               arg_type;
00093                                 long_type               kind;
00094 
00095         /* size is in terms of bytes for character, otherwise it's elements */
00096         /* If it is assumed-size character, size is elements also. */
00097                                 long_type               size;
00098 
00099                                 long_type               char_len;
00100                                 long_type               rank;
00101                                 long_type               line;
00102                                 char                    name[32];
00103 # ifdef _TARGET64
00104                                 unsigned int            unused2           : 32;
00105 # endif
00106                                 unsigned int            unused1           : 18;
00107                                 unsigned int            pgm_unknown       :  1;
00108                                 unsigned int            pgm_unit          :  1;
00109                                 unsigned int            ignore_tkr        :  1;
00110                                 unsigned int            dope_vector       :  1;
00111                                 unsigned int            pointer           :  1;
00112                                 unsigned int            default_kind      :  1;
00113                                 unsigned int            optional          :  1;
00114                                 unsigned int            intent_out        :  1;
00115                                 unsigned int            assumed_shape     :  1;
00116                                 unsigned int            assumed_size_array:  1;
00117                                 unsigned int            assumed_size_char :  1;
00118                                 unsigned int            defineable        :  1;
00119                                 unsigned int            array_element     :  1;
00120                                 unsigned int            generic_call      :  1;
00121 
00122                                 long_type               *derived_type_tbl;
00123                                 };
00124 
00125 
00126 long    argchck_suppress_msg[40];
00127 int     num_argchck_suppress_msg = 0;
00128 
00129 typedef struct arg_desc_node arg_desc_node_type;
00130 
00131 int linear_to_kind_type[Num_Linear_Types] = {
00132         /* Err_Res           */         0,
00133         /* Short_Char_Const  */         1,
00134         /* Short_Typeless_Const */      0,
00135         /* Typeless_1        */         0,
00136         /* Typeless_2        */         0,
00137         /* Typeless_4        */         0,
00138         /* Typeless_8        */         0,
00139         /* Long_Typeless     */         0,
00140         /* Integer_1         */         1,
00141         /* Integer_2         */         2,
00142         /* Integer_4         */         4,
00143         /* Integer_8         */         8,
00144         /* Real_4            */         4,
00145         /* Real_8            */         8,
00146         /* Real_16           */         16,
00147         /* Complex_4         */         4,
00148         /* Complex_8         */         8,
00149         /* Complex_16        */         16,
00150         /* CRI_Ptr_8         */         0,
00151         /* Logical_1         */         1,
00152         /* Logical_2         */         2,
00153         /* Logical_4         */         4,
00154         /* Logical_8         */         8,
00155         /* Character_1       */         1,
00156         /* Character_2       */         2,
00157         /* Character_4       */         4,
00158         /* CRI_Ch_Ptr_8      */         0,
00159         /* Structure_Type    */         0,
00160         /* CRI_Parcel_Ptr_8  */         0
00161         };
00162 
00163 
00164 
00165 /********************************************************\
00166 |* These are the final_arg_work tables that control the *|
00167 |* behavior of argument association. (ie. COPY IN/OUT)  *|
00168 |* act_arg_values are in s_globals.h                    *|
00169 \********************************************************/
00170 
00171 enum            dummy_arg_values {
00172                                 Unknown_Dummy,
00173                                 Scalar_Dummy,
00174                                 Sequence_Array_Dummy,
00175                                 Scalar_Ptr_Dummy,
00176                                 Array_Ptr_Dummy,
00177                                 Assumed_Shape_Dummy,
00178                                 Intrin_Dope_Dummy,
00179                                 Scalar_Target_Dummy,
00180                                 Array_Target_Dummy
00181                                   };
00182 
00183 typedef enum    dummy_arg_values        dummy_arg_type;
00184 
00185 int     arg_assoc_tbl[MAX_NUM_ACT_TYPES][MAX_NUM_DUMMY_TYPES] = {
00186         /* Scalar_Expression */                         {
00187                         /* Unknown_Dummy        */      COPY_IN,
00188                         /* Scalar_Dummy         */      COPY_IN,
00189                         /* Sequence_Array_Dummy */      ERROR_ASSOC,
00190                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00191                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00192                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00193                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00194                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00195                         /* Array_Target_Dummy   */      ERROR_ASSOC
00196                                                         },
00197         /* Scalar_Var */                                {
00198                         /* Unknown_Dummy        */      PASS_ADDRESS,
00199                         /* Scalar_Dummy         */      PASS_ADDRESS,
00200                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00201                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00202                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00203                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00204                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00205                         /* Scalar_Target_Dummy  */      MAKE_DV,
00206                         /* Array_Target_Dummy   */      ERROR_ASSOC
00207                                                         },
00208         /* Scalar_Tmp_Var */                            {
00209                         /* Unknown_Dummy        */      PASS_ADDRESS,
00210                         /* Scalar_Dummy         */      PASS_ADDRESS,
00211                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00212                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00213                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00214                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00215                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00216                         /* Scalar_Target_Dummy  */      MAKE_DV,
00217                         /* Array_Target_Dummy   */      ERROR_ASSOC
00218                                                         },
00219         /* Array_Elt */                                 {
00220                         /* Unknown_Dummy        */      PASS_ADDRESS,
00221                         /* Scalar_Dummy         */      PASS_ADDRESS,
00222                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00223                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00224                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00225                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00226                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00227                         /* Scalar_Target_Dummy  */      MAKE_DV,
00228                         /* Array_Target_Dummy   */      ERROR_ASSOC
00229                                                         },
00230         /* Array_Tmp_Elt */                             {
00231                         /* Unknown_Dummy        */      PASS_ADDRESS,
00232                         /* Scalar_Dummy         */      PASS_ADDRESS,
00233                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00234                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00235                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00236                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00237                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00238                         /* Scalar_Target_Dummy  */      MAKE_DV,
00239                         /* Array_Target_Dummy   */      ERROR_ASSOC
00240                                                         },
00241         /* Scalar_Ptr */                                {
00242                         /* Unknown_Dummy        */      PASS_ADDRESS,
00243                         /* Scalar_Dummy         */      PASS_ADDRESS,
00244                         /* Sequence_Array_Dummy */      ERROR_ASSOC,
00245                         /* Scalar_Ptr_Dummy     */      PASS_DV,
00246                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00247                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00248                         /* Intrin_Dope_Dummy    */      PASS_DV,
00249                         /* Scalar_Target_Dummy  */      PASS_DV,
00250                         /* Array_Target_Dummy   */      ERROR_ASSOC
00251                                                         },
00252         /* Scalar_Tmp_Ptr */                            {
00253                         /* Unknown_Dummy        */      PASS_ADDRESS,
00254                         /* Scalar_Dummy         */      PASS_ADDRESS,
00255                         /* Sequence_Array_Dummy */      ERROR_ASSOC,
00256                         /* Scalar_Ptr_Dummy     */      PASS_DV,
00257                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00258                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00259                         /* Intrin_Dope_Dummy    */      PASS_DV,
00260                         /* Scalar_Target_Dummy  */      PASS_DV,
00261                         /* Array_Target_Dummy   */      ERROR_ASSOC
00262                                                         },
00263         /* Scalar_Constant */                           {
00264                         /* Unknown_Dummy        */      COPY_IN,
00265                         /* Scalar_Dummy         */      COPY_IN,
00266                         /* Sequence_Array_Dummy */      ERROR_ASSOC,
00267                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00268                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00269                         /* Assumed_Shape_Dummy  */      ERROR_ASSOC,
00270                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00271                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00272                         /* Array_Target_Dummy   */      ERROR_ASSOC
00273                                                         },
00274         /* Array_Expr */                                {
00275                         /* Unknown_Dummy        */      COPY_IN,
00276                         /* Scalar_Dummy         */      ERROR_ASSOC,
00277                         /* Sequence_Array_Dummy */      COPY_IN,
00278                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00279                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00280                         /* Assumed_Shape_Dummy  */      COPY_IN_MAKE_DV,
00281                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00282                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00283                         /* Array_Target_Dummy   */      ERROR_ASSOC
00284                                                         },
00285         /* Array_Ptr */                         {
00286                         /* Unknown_Dummy        */      CHECK_CONTIG_FLAG,
00287                         /* Scalar_Dummy         */      ERROR_ASSOC,
00288                         /* Sequence_Array_Dummy */      CHECK_CONTIG_FLAG,
00289                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00290                         /* Array_Ptr_Dummy      */      PASS_DV,
00291                         /* Assumed_Shape_Dummy  */      PASS_DV_COPY,
00292                         /* Intrin_Dope_Dummy    */      PASS_DV,
00293                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00294                         /* Array_Target_Dummy   */      PASS_DV_COPY
00295                                                         },
00296         /* Array_Tmp_Ptr */                             {
00297                         /* Unknown_Dummy        */      CHECK_CONTIG_FLAG,
00298                         /* Scalar_Dummy         */      ERROR_ASSOC,
00299                         /* Sequence_Array_Dummy */      CHECK_CONTIG_FLAG,
00300                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00301                         /* Array_Ptr_Dummy      */      PASS_DV,
00302                         /* Assumed_Shape_Dummy  */      PASS_DV_COPY,
00303                         /* Intrin_Dope_Dummy    */      PASS_DV,
00304                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00305                         /* Array_Target_Dummy   */      PASS_DV_COPY
00306                                                         },
00307         /* Whole_Allocatable */                         {
00308                         /* Unknown_Dummy        */      PASS_ADDRESS,
00309                         /* Scalar_Dummy         */      ERROR_ASSOC,
00310                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00311                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00312                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00313                         /* Assumed_Shape_Dummy  */      PASS_DV_COPY,
00314                         /* Intrin_Dope_Dummy    */      PASS_DV,
00315                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00316                         /* Array_Target_Dummy   */      PASS_DV_COPY
00317                                                         },
00318         /* Whole_Tmp_Allocatable */                     {
00319                         /* Unknown_Dummy        */      PASS_ADDRESS,
00320                         /* Scalar_Dummy         */      ERROR_ASSOC,
00321                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00322                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00323                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00324                         /* Assumed_Shape_Dummy  */      PASS_DV_COPY,
00325                         /* Intrin_Dope_Dummy    */      PASS_DV,
00326                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00327                         /* Array_Target_Dummy   */      PASS_DV_COPY
00328                                                         },
00329         /* Whole_Sequence */                            {
00330                         /* Unknown_Dummy        */      PASS_ADDRESS,
00331                         /* Scalar_Dummy         */      ERROR_ASSOC,
00332                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00333                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00334                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00335                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00336                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00337                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00338                         /* Array_Target_Dummy   */      MAKE_DV
00339                                                         },
00340         /* Whole_Tmp_Sequence */                        {
00341                         /* Unknown_Dummy        */      PASS_ADDRESS,
00342                         /* Scalar_Dummy         */      ERROR_ASSOC,
00343                         /* Sequence_Array_Dummy */      PASS_ADDRESS,
00344                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00345                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00346                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00347                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00348                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00349                         /* Array_Target_Dummy   */      MAKE_DV
00350                                                         },
00351         /* Whole_Ass_Shape */                           {
00352                         /* Unknown_Dummy        */      CHECK_CONTIG_FLAG,
00353                         /* Scalar_Dummy         */      ERROR_ASSOC,
00354                         /* Sequence_Array_Dummy */      CHECK_CONTIG_FLAG,
00355                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00356                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00357                         /* Assumed_Shape_Dummy  */      PASS_DV_COPY,
00358                         /* Intrin_Dope_Dummy    */      PASS_DV,
00359                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00360                         /* Array_Target_Dummy   */      PASS_DV_COPY
00361                                                         },
00362         /* Whole_Array_Constant */                      {
00363                         /* Unknown_Dummy        */      COPY_IN,
00364                         /* Scalar_Dummy         */      ERROR_ASSOC,
00365                         /* Sequence_Array_Dummy */      COPY_IN,
00366                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00367                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00368                         /* Assumed_Shape_Dummy  */      COPY_IN_MAKE_DV,
00369                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00370                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00371                         /* Array_Target_Dummy   */      ERROR_ASSOC
00372                                                         },
00373         /* Sequence_Array_Section */                    {
00374                         /* Unknown_Dummy        */      COPY_IN_COPY_OUT,
00375                         /* Scalar_Dummy         */      ERROR_ASSOC,
00376                         /* Sequence_Array_Dummy */      COPY_IN_COPY_OUT,
00377                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00378                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00379                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00380                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00381                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00382                         /* Array_Target_Dummy   */      MAKE_DV
00383                                                         },
00384         /* Constant_Array_Section */                    {
00385                         /* Unknown_Dummy        */      COPY_IN,
00386                         /* Scalar_Dummy         */      ERROR_ASSOC,
00387                         /* Sequence_Array_Dummy */      COPY_IN,
00388                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00389                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00390                         /* Assumed_Shape_Dummy  */      COPY_IN_MAKE_DV,
00391                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00392                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00393                         /* Array_Target_Dummy   */      ERROR_ASSOC
00394                                                         },
00395         /* Dv_Array_Section */                          {
00396                         /* Unknown_Dummy        */      COPY_IN_COPY_OUT,
00397                         /* Scalar_Dummy         */      ERROR_ASSOC,
00398                         /* Sequence_Array_Dummy */      COPY_IN_COPY_OUT,
00399                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00400                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00401                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00402                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00403                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00404                         /* Array_Target_Dummy   */      MAKE_DV
00405                                                         },
00406         /* Vector_Subscript_Section */                  {
00407                         /* Unknown_Dummy        */      COPY_IN,
00408                         /* Scalar_Dummy         */      ERROR_ASSOC,
00409                         /* Sequence_Array_Dummy */      COPY_IN,
00410                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00411                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00412                         /* Assumed_Shape_Dummy  */      COPY_IN_MAKE_DV,
00413                         /* Intrin_Dope_Dummy    */      COPY_IN_MAKE_DV,
00414                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00415                         /* Array_Target_Dummy   */      ERROR_ASSOC
00416                                                         },
00417 
00418         /* Contig_Section */                            {
00419                         /* Unknown_Dummy        */      PASS_SECTION_ADDRESS,
00420                         /* Scalar_Dummy         */      ERROR_ASSOC,
00421                         /* Sequence_Array_Dummy */      PASS_SECTION_ADDRESS,
00422                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00423                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00424                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00425                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00426                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00427                         /* Array_Target_Dummy   */      MAKE_DV
00428                                                         },
00429 
00430         /* Dv_Contig_Section */                            {
00431                         /* Unknown_Dummy        */      CHECK_CONTIG_FLAG,
00432                         /* Scalar_Dummy         */      ERROR_ASSOC,
00433                         /* Sequence_Array_Dummy */      CHECK_CONTIG_FLAG,
00434                         /* Scalar_Ptr_Dummy     */      ERROR_ASSOC,
00435                         /* Array_Ptr_Dummy      */      ERROR_ASSOC,
00436                         /* Assumed_Shape_Dummy  */      MAKE_DV,
00437                         /* Intrin_Dope_Dummy    */      MAKE_DV,
00438                         /* Scalar_Target_Dummy  */      ERROR_ASSOC,
00439                         /* Array_Target_Dummy   */      MAKE_DV
00440                                                         },
00441                         };
00442 
00443 
00444 /******************************************************\
00445 |* globally accessible objects defined in s_call.c    *|
00446 \******************************************************/
00447 
00448 arg_strct_type           *arg_info_list;
00449 int                      *arg_list;
00450 int                       arg_list_size          = 0;
00451 int                       arg_info_list_size     = 0;
00452 int                       arg_info_list_base     = NULL_IDX;
00453 int                       arg_info_list_top      = NULL_IDX;
00454 
00455 arg_strct_type            init_arg_info;
00456 expr_arg_type             init_exp_desc;
00457 
00458 /**********************************************************************\
00459 |* This variable keeps track of the original sh idx of stmt with call *|
00460 \**********************************************************************/
00461 
00462 int                     orig_sh_idx = NULL_IDX;
00463 boolean                 keep_orig_sh = FALSE;
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines