mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-16 06:14:59 +00:00
Estimated hours taken: 1.5 Branches: main Move the stuff currently in hlds_pred.m that deals with clauses into a new module, hlds_clauses.m. Move the stuff currently in hlds_pred.m that deals with RTTI into a new module, hlds_rtti.m. Move the stuff currently in hlds_module.m that deals with predicate tables into a new module, pred_table.m. These changes make hlds_pred.m and hlds_module.m much more cohesive, but there are no changes in algorithms. compiler/hlds_clauses.m: compiler/hlds_rtti.m: compiler/pred_table.m: New modules as described above. In some cases, fix mixleading or ambiguous predicate names in the process, and convert a few predicates to functions. compiler/hlds_pred.m: compiler/hlds_module.m: Delete the stuff moved to other modules. compiler/*.m: In modules that need the functionality moved a new module, import the new module. It is rare for all the new modules to be needed, and many modules don't need any of the new modules at all. (For example, of the 200+ modules that import hlds_module.m, only about 40 need pred_table.m.) Conform to the few minor changes to e.g. predicate names. compiler/notes/compiler_design.html: Document the new modules.
36 lines
1.2 KiB
Mathematica
36 lines
1.2 KiB
Mathematica
%-----------------------------------------------------------------------------%
|
|
% Copyright (C) 2002-2006 The University of Melbourne.
|
|
% This file may only be copied under the terms of the GNU General
|
|
% Public License - see the file COPYING in the Mercury distribution.
|
|
%-----------------------------------------------------------------------------%
|
|
%
|
|
% This package contains the bytecode generator.
|
|
%
|
|
% Note that the bytecode interpreter, which was supposed to interpret
|
|
% the bytecodes that this back-end generates, is not yet implemented.
|
|
%
|
|
:- module bytecode_backend.
|
|
:- interface.
|
|
|
|
:- import_module backend_libs.
|
|
:- import_module check_hlds. % for type_util and mode_util
|
|
:- import_module hlds.
|
|
:- import_module libs.
|
|
:- import_module mdbcomp.
|
|
:- import_module parse_tree.
|
|
|
|
%-----------------------------------------------------------------------------%
|
|
|
|
:- include_module bytecode.
|
|
:- include_module bytecode_gen.
|
|
|
|
%-----------------------------------------------------------------------------%
|
|
|
|
:- implementation.
|
|
% bytecode_gen uses ll_backend__call_gen.m
|
|
:- import_module ll_backend.
|
|
|
|
:- end_module bytecode_backend.
|
|
|
|
%-----------------------------------------------------------------------------%
|