PreviousUpNext

15.4.220  src/lib/compiler/back/low/ccalls/ccalls-dummy-g.pkg

## ccalls-dummy-g.pkg

# Compiled by:
#     src/lib/compiler/back/low/lib/lowhalf.lib


#  A dummy (placeholder) "implementation" of the ccalls interface.

# We are nowhere invoked:

generic package ccalls_dummy_g (
    #
    package tcf: Treecode_Form;                         # Treecode_Form         is from   src/lib/compiler/back/low/treecode/treecode-form.api
    #
    impossible: String -> X;
)
: Ccalls                                                # Ccalls                is from   src/lib/compiler/back/low/ccalls/ccalls.api
  where
      tcf == tcf                                        # "tcf" == "treecode_form".
{
    # Export to client packages:
    #
    package tcf = tcf;

    Ckit_Arg 
      = ARG   tcf::Int_Expression       
      | FARG  tcf::Float_Expression
      | ARGS  List( Ckit_Arg )
      ;

    # See comments in    src/lib/compiler/back/low/ccalls/ccalls.api
    #
    fun make_inline_c_call _
        =
        impossible "C-calls not implemented (make_inline_c_call)";

    param_area_offset = 0;

    natural_int_size = 32;

    Arg_Location
      = REG   (tcf::Int_Bitsize,        tcf::Register, Null_Or( tcf::mi::Machine_Int ))
      | FREG  (tcf::Float_Bitsize,      tcf::Register, Null_Or( tcf::mi::Machine_Int ))
      | STK   (tcf::Int_Bitsize,        tcf::mi::Machine_Int)
      | FSTK  (tcf::Float_Bitsize,      tcf::mi::Machine_Int)
      | ARG_LOCS  List( Arg_Location )
      ;

    fun layout _ = impossible "C-calls not implemented (layout)";

    my callee_save_regs:   List( tcf::Register ) = [];
    my callee_save_fregs:  List( tcf::Register ) = [];
};


## Copyright (c) 2004 by The Fellowship of SML/NJ
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext