# treecode-extension-compiler-sparc32-g.pkg
#
# Background comments may be found in:
#
#
src/lib/compiler/back/low/treecode/treecode-extension.api# Compiled by:
#
src/lib/compiler/mythryl-compiler-support-for-sparc32.libstipulate
package lem = lowhalf_error_message; # lowhalf_error_message is from
src/lib/compiler/back/low/control/lowhalf-error-message.pkgherein
# We are invoked from:
#
#
src/lib/compiler/back/low/main/sparc32/backend-lowhalf-sparc32.pkg #
generic package treecode_extension_compiler_sparc32_g (
# =====================================
#
package tcf: Treecode_Form # Treecode_Form is from
src/lib/compiler/back/low/treecode/treecode-form.api where
trx == treecode_extension_sparc32;
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).
also 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 mcf = mcf; # "mcf" == "machcode_form" (abstract machine code).
package tcf = mcf::tcf; # "tcf" == "treecode_form".
package mcg = mcg;
package tcs = tcs; # "tcs" == "treecode_stream".
stipulate
package rgk = mcf::rgk; # "rgk" == "registerkinds".
#
package ext = treecode_extension_sparc32; # treecode_extension_sparc32 is from
src/lib/compiler/back/low/main/sparc32/treecode-extension-sparc32.pkg package treecode_extension_sext_compiler_sparc32
= treecode_extension_sext_compiler_sparc32_g ( # treecode_extension_sext_compiler_sparc32_g is from
src/lib/compiler/back/low/sparc32/code/treecode-extension-sext-compiler-sparc32-g.pkg #
package mcf = mcf; # "mcf" == "machcode_form" (abstract machine code).
package mcg = mcg; # "mcg" == "machcode_controlflow_graph".
package tcs = tcs; # "tcs" == "treecode_stream".
);
herein
Reducer
=
tcs::Reducer
(
mcf::Machine_Op,
rgk::Codetemplists,
mcf::Operand,
mcf::Addressing_Mode,
mcg::Machcode_Controlflow_Graph
);
fun unimplemented _
=
lem::impossible "treecode_extension_compiler_sparc32_g";
compile_sext = treecode_extension_sext_compiler_sparc32::compile_sext;
compile_rext = unimplemented;
compile_ccext = unimplemented;
compile_fext = unimplemented;
end;
};
end;