mirror of
https://github.com/Mercury-Language/mercury.git
synced 2026-04-15 01:13:30 +00:00
Give some predicates in mmc_analysis.m more meaningful names.
compiler/mmc_analysis.m:
As above.
compiler/exception_analysis.m:
compiler/structure_reuse.analysis.m:
compiler/structure_sharing.analysis.m:
compiler/tabling_analysis.m:
compiler/trailing_analysis.m:
compiler/unused_args.m:
Conform to the changes above.
This commit is contained in:
@@ -2,7 +2,7 @@
|
||||
% vim: ft=mercury ts=4 sw=4 et
|
||||
%-----------------------------------------------------------------------------%
|
||||
% Copyright (C) 2004-2012 The University of Melbourne.
|
||||
% Copyright (C) 2014-2017, 2019-2025 The Mercury Team.
|
||||
% Copyright (C) 2014-2017, 2019-2026 The Mercury Team.
|
||||
% This file may only be copied under the terms of the GNU General
|
||||
% Public License - see the file COPYING in the Mercury distribution.
|
||||
%-----------------------------------------------------------------------------%
|
||||
@@ -1155,7 +1155,7 @@ search_excp_analysis_status(PPId, Result, AnalysisStatus, !ModuleInfo) :-
|
||||
|
||||
search_excp_analysis_status_2(ModuleInfo, PPId, Result, AnalysisStatus,
|
||||
!AnalysisInfo) :-
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
Call = any_call,
|
||||
lookup_best_result(!.AnalysisInfo, ModuleName, FuncId, no_func_info, Call,
|
||||
MaybeBestResult),
|
||||
@@ -1196,7 +1196,7 @@ maybe_record_exception_result_2(ModuleInfo, PredId, PredInfo, ProcId,
|
||||
ShouldWrite = should_write,
|
||||
PPId = proc(PredId, ProcId),
|
||||
lookup_proc_exception_info(ModuleInfo, PPId, Status, ResultStatus),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, any_call,
|
||||
exception_analysis_answer(Status), ResultStatus, !AnalysisInfo)
|
||||
;
|
||||
@@ -1268,7 +1268,8 @@ lookup_exception_analysis_result(PPId, ExceptionStatus, !ModuleInfo) :-
|
||||
UseAnalysisRegistry = yes,
|
||||
some [!AnalysisInfo] (
|
||||
module_info_get_analysis_info(!.ModuleInfo, !:AnalysisInfo),
|
||||
module_name_func_id(!.ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(!.ModuleInfo, PPId,
|
||||
ModuleName, FuncId),
|
||||
lookup_best_result(!.AnalysisInfo, ModuleName, FuncId,
|
||||
no_func_info, any_call, MaybeBestResult),
|
||||
(
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
% vim: ft=mercury ts=4 sw=4 et
|
||||
%-----------------------------------------------------------------------------%
|
||||
% Copyright (C) 2003-2006, 2008-2012 The University of Melbourne.
|
||||
% Copyright (C) 2014-2020, 2022-2025 The Mercury team.
|
||||
% Copyright (C) 2014-2020, 2022-2026 The Mercury team.
|
||||
% This file may only be copied under the terms of the GNU General
|
||||
% Public License - see the file COPYING in the Mercury distribution.
|
||||
%-----------------------------------------------------------------------------%
|
||||
@@ -33,10 +33,10 @@
|
||||
|
||||
:- instance compiler(mmc).
|
||||
|
||||
:- pred module_name_func_id(module_info::in, pred_proc_id::in,
|
||||
:- pred ppid_to_module_name_func_id(module_info::in, pred_proc_id::in,
|
||||
module_name::out, func_id::out) is det.
|
||||
|
||||
:- pred module_name_func_id_from_pred_info(pred_info::in, proc_id::in,
|
||||
:- pred pred_info_proc_id_to_module_name_func_id(pred_info::in, proc_id::in,
|
||||
module_name::out, func_id::out) is det.
|
||||
|
||||
:- pred func_id_to_ppid(module_info::in, module_name::in,
|
||||
@@ -141,11 +141,14 @@ mmc_module_name_to_write_file_name(Globals, Ext,
|
||||
module_name_to_file_name_create_dirs(Globals, $pred, Ext,
|
||||
ModuleName, FileName, _FileNameProposed, !IO).
|
||||
|
||||
module_name_func_id(ModuleInfo, proc(PredId, ProcId), PredModule, FuncId) :-
|
||||
ppid_to_module_name_func_id(ModuleInfo, proc(PredId, ProcId),
|
||||
PredModule, FuncId) :-
|
||||
module_info_pred_info(ModuleInfo, PredId, PredInfo),
|
||||
module_name_func_id_from_pred_info(PredInfo, ProcId, PredModule, FuncId).
|
||||
pred_info_proc_id_to_module_name_func_id(PredInfo, ProcId,
|
||||
PredModule, FuncId).
|
||||
|
||||
module_name_func_id_from_pred_info(PredInfo, ProcId, PredModule, FuncId) :-
|
||||
pred_info_proc_id_to_module_name_func_id(PredInfo, ProcId,
|
||||
PredModule, FuncId) :-
|
||||
PredModule = pred_info_module(PredInfo),
|
||||
PredName = pred_info_name(PredInfo),
|
||||
PredOrFunc = pred_info_is_pred_or_func(PredInfo),
|
||||
|
||||
@@ -609,7 +609,7 @@ process_intermod_analysis_reuse_proc(PredId, PredInfo, ProcId,
|
||||
!ModuleInfo, !ReuseTable) :-
|
||||
PPId = proc(PredId, ProcId),
|
||||
module_info_get_analysis_info(!.ModuleInfo, AnalysisInfo),
|
||||
module_name_func_id(!.ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(!.ModuleInfo, PPId, ModuleName, FuncId),
|
||||
pred_info_proc_info(PredInfo, ProcId, ProcInfo),
|
||||
lookup_results(AnalysisInfo, ModuleName, FuncId, ImportedResults),
|
||||
list.foldl2(
|
||||
@@ -682,7 +682,7 @@ process_intermod_analysis_defined_proc(ModuleInfo, PredId, ProcId,
|
||||
!ExternalRequests, !MustHaveReuseVersions) :-
|
||||
PPId = proc(PredId, ProcId),
|
||||
module_info_get_analysis_info(ModuleInfo, AnalysisInfo),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
|
||||
% Only add requests for procedures that *really* belong to this module.
|
||||
module_info_get_name(ModuleInfo, ThisModule),
|
||||
@@ -974,7 +974,7 @@ record_structure_reuse_results_2(ModuleInfo, PPId, NoClobbers, ReuseAs_Status,
|
||||
(
|
||||
ShouldWrite = should_write,
|
||||
reuse_as_to_structure_reuse_answer(ModuleInfo, PPId, ReuseAs, Answer),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, structure_reuse_call(NoClobbers),
|
||||
Answer, Status, !AnalysisInfo)
|
||||
;
|
||||
@@ -1008,7 +1008,7 @@ reuse_as_to_structure_reuse_answer(ModuleInfo, PPId, ReuseAs, Answer) :-
|
||||
handle_structure_reuse_dependency(ModuleInfo,
|
||||
ppid_no_clobbers(DepPPId, NoClobbers), !AnalysisInfo) :-
|
||||
% Record that we depend on the result for the called procedure.
|
||||
module_name_func_id(ModuleInfo, DepPPId, DepModuleName, DepFuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, DepPPId, DepModuleName, DepFuncId),
|
||||
Call = structure_reuse_call(NoClobbers),
|
||||
Answer = _ : structure_reuse_answer,
|
||||
get_func_info(ModuleInfo, DepModuleName, DepFuncId, Call, Answer,
|
||||
@@ -1021,7 +1021,7 @@ handle_structure_reuse_dependency(ModuleInfo,
|
||||
|
||||
record_intermod_requests(ModuleInfo, sr_request(PPId, NoClobbers),
|
||||
!AnalysisInfo) :-
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_request(analysis_name, ModuleName, FuncId,
|
||||
structure_reuse_call(NoClobbers), !AnalysisInfo).
|
||||
|
||||
@@ -1040,7 +1040,7 @@ structure_reuse_answer_harsher_than_in_analysis_registry(ProgressStream,
|
||||
OrigPPId, NoClobbers),
|
||||
|
||||
% Look up the old result.
|
||||
module_name_func_id(ModuleInfo, OrigPPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, OrigPPId, ModuleName, FuncId),
|
||||
module_info_proc_info(ModuleInfo, OrigPPId, ProcInfo),
|
||||
FuncInfo = structure_reuse_func_info(ModuleInfo, ProcInfo),
|
||||
Call = structure_reuse_call(NoClobbers),
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
% vim: ft=mercury ts=4 sw=4 et
|
||||
%---------------------------------------------------------------------------%
|
||||
% Copyright (C) 2005-2012 The University of Melbourne.
|
||||
% Copyright (C) 2017 The Mercury Team.
|
||||
% Copyright (C) 2017, 2026 The Mercury Team.
|
||||
% This file may only be copied under the terms of the GNU General
|
||||
% Public License - see the file COPYING in the Mercury distribution.
|
||||
%---------------------------------------------------------------------------%
|
||||
@@ -269,7 +269,7 @@ process_intermod_analysis_imported_sharing_in_proc(ModuleInfo, AnalysisInfo,
|
||||
PPId = proc(PredId, ProcId),
|
||||
some [!ProcInfo] (
|
||||
map.lookup(!.ProcTable, ProcId, !:ProcInfo),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
FuncInfo = structure_sharing_func_info(ModuleInfo, !.ProcInfo),
|
||||
lookup_best_result(AnalysisInfo, ModuleName, FuncId, FuncInfo,
|
||||
structure_sharing_call, MaybeBestResult),
|
||||
@@ -1164,7 +1164,7 @@ maybe_record_sharing_analysis_result_2(ModuleInfo, SharingAsTable, PredId,
|
||||
SharingPairs),
|
||||
Status = Status0
|
||||
),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, structure_sharing_call, Answer,
|
||||
Status, !AnalysisInfo)
|
||||
;
|
||||
@@ -1190,7 +1190,8 @@ reason_implies_optimal(ModuleInfo, AnalysisInfo, Reason) :-
|
||||
|
||||
handle_dep_procs(ModuleInfo, DepPPId, !AnalysisInfo) :-
|
||||
% Record that we depend on the result for the called procedure.
|
||||
module_name_func_id(ModuleInfo, DepPPId, DepModuleName, DepFuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, DepPPId,
|
||||
DepModuleName, DepFuncId),
|
||||
Call = structure_sharing_call,
|
||||
Answer = _ : structure_sharing_answer,
|
||||
get_func_info(ModuleInfo, DepModuleName, DepFuncId, Call, Answer,
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
% vim: ft=mercury ts=4 sw=4 et
|
||||
%-----------------------------------------------------------------------------%
|
||||
% Copyright (C) 2006-2012 The University of Melbourne.
|
||||
% Copyright (C) 2014-2018, 2020-2025 The Mercury Team.
|
||||
% Copyright (C) 2014-2018, 2020-2026 The Mercury Team.
|
||||
% This file may only be copied under the terms of the GNU General
|
||||
% Public License - see the file COPYING in the Mercury distribution.
|
||||
%-----------------------------------------------------------------------------%
|
||||
@@ -893,7 +893,7 @@ search_mm_tabling_analysis_status(PPId, Result, AnalysisStatus, !ModuleInfo) :-
|
||||
|
||||
search_mm_tabling_analysis_status_2(ModuleInfo, PPId, Result, AnalysisStatus,
|
||||
!AnalysisInfo) :-
|
||||
mmc_analysis.module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
Call = any_call,
|
||||
lookup_best_result(!.AnalysisInfo, ModuleName, FuncId, no_func_info, Call,
|
||||
MaybeBestStatus),
|
||||
@@ -935,7 +935,7 @@ maybe_record_mm_tabling_result_2(ModuleInfo, PredId, PredInfo, ProcId,
|
||||
ShouldWrite = should_write,
|
||||
PPId = proc(PredId, ProcId),
|
||||
lookup_proc_mm_tabling_info(ModuleInfo, PPId, Status, ResultStatus),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, any_call,
|
||||
mm_tabling_analysis_answer(Status), ResultStatus, !AnalysisInfo)
|
||||
;
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
% vim: ft=mercury ts=4 sw=4 et
|
||||
%-----------------------------------------------------------------------------%
|
||||
% Copyright (C) 2005-2012 The University of Melbourne.
|
||||
% Copyright (C) 2014-2025 The Mercury team.
|
||||
% Copyright (C) 2014-2026 The Mercury team.
|
||||
% This file may only be copied under the terms of the GNU General
|
||||
% Public License - see the file COPYING in the Mercury distribution.
|
||||
%-----------------------------------------------------------------------------%
|
||||
@@ -1130,7 +1130,7 @@ search_trail_analysis_status(PPId, Result, AnalysisStatus, !ModuleInfo) :-
|
||||
|
||||
search_trail_analysis_status_2(ModuleInfo, PPId, Result, AnalysisStatus,
|
||||
!AnalysisInfo) :-
|
||||
mmc_analysis.module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
Call = any_call,
|
||||
analysis.operations.lookup_best_result(!.AnalysisInfo, ModuleName,
|
||||
FuncId, no_func_info, Call, MaybeBestStatus),
|
||||
@@ -1170,7 +1170,7 @@ maybe_record_trailing_result_2(ModuleInfo, PredId, PredInfo, ProcId,
|
||||
ShouldWrite = should_write,
|
||||
PPId = proc(PredId, ProcId),
|
||||
lookup_proc_trailing_info(ModuleInfo, PPId, Status, ResultStatus),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, any_call,
|
||||
trailing_analysis_answer(Status), ResultStatus, !AnalysisInfo)
|
||||
;
|
||||
|
||||
@@ -496,8 +496,8 @@ setup_proc_args(PredId, ProcId, !GlobalVarUsageMap,
|
||||
pred_info_get_orig_arity(PredInfo, PredFormArity),
|
||||
FuncInfo = unused_args_func_info(PredFormArity),
|
||||
module_info_get_analysis_info(!.ModuleInfo, AnalysisInfo0),
|
||||
module_name_func_id_from_pred_info(PredInfo, ProcId, ModuleId,
|
||||
FuncId),
|
||||
pred_info_proc_id_to_module_name_func_id(PredInfo, ProcId,
|
||||
ModuleId, FuncId),
|
||||
lookup_best_result(AnalysisInfo0, ModuleId, FuncId,
|
||||
FuncInfo, unused_args_call, MaybeBestResult),
|
||||
(
|
||||
@@ -1164,8 +1164,8 @@ unused_args_create_new_pred(UnusedArgInfo, OrigPredProcId,
|
||||
Intermod = yes,
|
||||
module_info_get_analysis_info(!.ModuleInfo, AnalysisInfo0),
|
||||
|
||||
module_name_func_id_from_pred_info(OrigPredInfo, ProcId, ModuleId,
|
||||
FuncId),
|
||||
pred_info_proc_id_to_module_name_func_id(OrigPredInfo, ProcId,
|
||||
ModuleId, FuncId),
|
||||
analysis.operations.lookup_results(AnalysisInfo0, ModuleId, FuncId,
|
||||
IntermodResultsTriples : list(analysis_result(unused_args_call,
|
||||
unused_args_answer))),
|
||||
@@ -2085,7 +2085,7 @@ maybe_record_intermod_unused_args_2(ModuleInfo, UnusedArgInfo,
|
||||
else
|
||||
Answer = unused_args_answer([])
|
||||
),
|
||||
module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, PPId, ModuleName, FuncId),
|
||||
record_result(ModuleName, FuncId, unused_args_call, Answer, optimal,
|
||||
!AnalysisInfo)
|
||||
else
|
||||
@@ -2127,8 +2127,8 @@ record_intermod_dependencies_2(ModuleInfo, CalleePredProcId, !AnalysisInfo) :-
|
||||
pred_info_is_imported_not_external(CalleePredInfo),
|
||||
not is_unify_index_or_compare_pred(CalleePredInfo)
|
||||
then
|
||||
module_name_func_id(ModuleInfo, CalleePredProcId, CalleeModule,
|
||||
CalleeFuncId),
|
||||
ppid_to_module_name_func_id(ModuleInfo, CalleePredProcId,
|
||||
CalleeModule, CalleeFuncId),
|
||||
Call = unused_args_call,
|
||||
Answer = _ : unused_args_answer,
|
||||
get_func_info(ModuleInfo, CalleeModule, CalleeFuncId, Call, Answer,
|
||||
|
||||
Reference in New Issue
Block a user