mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-09 19:02:18 +00:00
Make --target il' imply --high-level-data'.
Estimated hours taken: 0.25 Branches: main compiler/handle_options.m: scripts/final_grade_options.sh-subr: Make `--target il' imply `--high-level-data'. This is needed to ensure that the `--il' and `--target il' options select the `il' grade, which uses high-level data, rather than the `ilc' grade, which uses low-level data and which is no longer documented because it is not useful; high-level data is better for both efficiency and interoperability and for IL there are no advantages to low-level data.
This commit is contained in:
@@ -331,6 +331,11 @@ postprocess_options_2(OptionTable0, Target, GC_Method, TagsMethod0,
|
||||
% - high-level code
|
||||
% Because only the MLDS back-end supports
|
||||
% compiling to IL, not the LLDS back-end.
|
||||
% - high-level data
|
||||
% Because it is more efficient,
|
||||
% and better for interoperability.
|
||||
% (In theory --low-level-data should work too,
|
||||
% but there's no reason to bother supporting it.)
|
||||
% - turning off nested functions
|
||||
% Because IL doesn't support nested functions.
|
||||
% - using copy-out for nondet output arguments
|
||||
@@ -375,6 +380,7 @@ postprocess_options_2(OptionTable0, Target, GC_Method, TagsMethod0,
|
||||
globals__io_set_option(reclaim_heap_on_semidet_failure,
|
||||
bool(no)),
|
||||
globals__io_set_option(highlevel_code, bool(yes)),
|
||||
globals__io_set_option(highlevel_data, bool(yes)),
|
||||
globals__io_set_option(gcc_nested_functions, bool(no)),
|
||||
globals__io_set_option(nondet_copy_out, bool(yes)),
|
||||
globals__io_set_option(num_tag_bits, int(0)),
|
||||
|
||||
@@ -55,9 +55,9 @@ case $target in asm|il|java)
|
||||
esac
|
||||
|
||||
#
|
||||
# --target Java implies --high-level-data
|
||||
# --target IL or Java implies --high-level-data
|
||||
#
|
||||
case $target in java)
|
||||
case $target in il|java)
|
||||
highlevel_data=true ;;
|
||||
esac
|
||||
|
||||
|
||||
Reference in New Issue
Block a user