PreviousUpNext

15.4.308  src/lib/compiler/back/low/main/nextcode/treecode-extension-compiler-mythryl-g.pkg

## treecode-extension-compiler-mythryl-g.pkg
#
# Background comments may be found in:
#
#     src/lib/compiler/back/low/treecode/treecode-extension.api
#
# This is the default extension compilation module 
# used for all architectures except the intel32.

# Compiled by:
#     src/lib/compiler/core.sublib

stipulate
    package lem =  lowhalf_error_message;                                       # lowhalf_error_message         is from   src/lib/compiler/back/low/control/lowhalf-error-message.pkg
herein

    # We are invoked (only) by:
    #
    #    src/lib/compiler/back/low/main/pwrpc32/backend-lowhalf-pwrpc32.pkg

    generic package   treecode_extension_compiler_mythryl_g   (
        #             =====================================
        #
        package tcs: Treecode_Codebuffer;                                               # Treecode_Codebuffer           is from   src/lib/compiler/back/low/treecode/treecode-codebuffer.api

        package mcg: Machcode_Controlflow_Graph                                 # Machcode_Controlflow_Graph    is from   src/lib/compiler/back/low/mcg/machcode-controlflow-graph.api
                     where
                         pop == tcs::cst::pop;                                  # "pop" == "pseudo_op".
    )
    : (weak) Treecode_Extension_Compiler                                        # Treecode_Extension_Compiler   is from   src/lib/compiler/back/low/treecode/treecode-extension-compiler.api
    {
        # Export to client packages:
        #       
        package mcg =  mcg;                                                     # "mcg" == "machcode_controlflow_graph".
        package tcf =  tcs::tcf;                                                # "tcf" == "treecode_form".
        package mcf =  mcg::mcf;                                                # "mcf" == "machcode_form" (abstract machine code).
        package tcs =  tcs;                                                     # "tcs" == "treecode_stream".


        Reducer
           =
           tcs::Reducer
             (
               mcf::Machine_Op,
               mcf::rgk::Codetemplists,
               mcf::Operand,
               mcf::Addressing_Mode,
               mcg::Machcode_Controlflow_Graph
             );

        fun unimplemented _
            =
            lem::impossible "treecode_extension_compiler_mythryl_g"; 

        compile_sext  = unimplemented;
        compile_rext  = unimplemented;
        compile_fext  = unimplemented;
        compile_ccext = unimplemented;

    };
end;


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext