PreviousUpNext

15.3.157  src/lib/compiler/back/low/sparc32/code/treecode-extension-sext-compiler-sparc32.api

## treecode-extension-sext-compiler-sparc32.api
#
# Background comments may be found in:
#
#     src/lib/compiler/back/low/treecode/treecode-extension.api

# Compiled by:
#     src/lib/compiler/back/low/sparc32/backend-sparc32.lib



# Compiling a trivial extension to the Sparc instruction set
# (UNIMP instruction)



###              "Aerial flight is one of that class of problems
###               with which men will never have to cope."
###
###                                  -- Simon Newcomb



api Treecode_Extension_Sext_Compiler_Sparc32 {
    #
    package tcf:  Treecode_Form;                                        # Treecode_Form                 is from   src/lib/compiler/back/low/treecode/treecode-form.api

    package mcf:  Machcode_Sparc32                                      # Machcode_Sparc32              is from   src/lib/compiler/back/low/sparc32/code/machcode-sparc32.codemade.api
                  where
                      tcf == tcf;                                       # "tcf" == "treecode_form".

    package tcs:  Treecode_Codebuffer                                   # Treecode_Codebuffer           is from   src/lib/compiler/back/low/treecode/treecode-codebuffer.api
                  where
                      tcf == mcf::tcf;                                  # "tcf" == "treecode_form".

    package mcg: Machcode_Controlflow_Graph                             # Machcode_Controlflow_Graph            is from   src/lib/compiler/back/low/mcg/machcode-controlflow-graph.api
                 where
                     mcf == mcf;                                        # "mcf" == "machcode_form" (abstract machine code).


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

    compile_sext
        :
        Reducer
        ->
        { void_expression:      treecode_extension_sext_sparc32::Sext( tcf::Void_Expression,
                                                                        tcf::Int_Expression,
                                                                        tcf::Float_Expression,
                                                                        tcf::Flag_Expression                    # flag expressions handle zero/parity/overflow/... flag stuff.
                                                                      ),
          notes:                List( tcf::Note )
        }
        ->
        Void;
};



## COPYRIGHT (c) 2001 Bell Labs, Lucent Technologies
## Subsequent changes by Jeff Prothero Copyright (c) 2010-2015,
## released per terms of SMLNJ-COPYRIGHT.


Comments and suggestions to: bugs@mythryl.org

PreviousUpNext