Merge cs_check_fpu_exception part of commit 39813

Adapt ppudump to added entry to tlocalswitch enum type.

git-svn-id: branches/fixes_3_2@45984 -
This commit is contained in:
pierre 2020-08-02 09:02:10 +00:00
parent d7de35c5b8
commit 80553119b5
4 changed files with 14 additions and 2 deletions

View File

@ -156,7 +156,7 @@ interface
cs_full_boolean_eval,cs_typed_const_writable,cs_allow_enum_calc, cs_full_boolean_eval,cs_typed_const_writable,cs_allow_enum_calc,
cs_do_inline,cs_fpu_fwait,cs_ieee_errors, cs_do_inline,cs_fpu_fwait,cs_ieee_errors,
cs_check_low_addr_load,cs_imported_data, cs_check_low_addr_load,cs_imported_data,
cs_excessprecision, cs_excessprecision,cs_check_fpu_exceptions,
{ mmx } { mmx }
cs_mmx,cs_mmx_saturation, cs_mmx,cs_mmx_saturation,
{ parser } { parser }

View File

@ -1191,6 +1191,11 @@ begin
include(init_settings.moduleswitches,cs_fp_emulation); include(init_settings.moduleswitches,cs_fp_emulation);
end; end;
{$endif cpufpemu} {$endif cpufpemu}
'E' :
If UnsetBool(More, j, opt, false) then
exclude(init_settings.localswitches,cs_check_fpu_exceptions)
Else
include(init_settings.localswitches,cs_check_fpu_exceptions);
'f' : 'f' :
begin begin
s:=upper(copy(more,j+1,length(more)-j)); s:=upper(copy(more,j+1,length(more)-j));

View File

@ -436,6 +436,12 @@ unit scandir;
end; end;
procedure dir_checkfpuexceptions;
begin
do_localswitch(cs_check_fpu_exceptions);
end;
procedure dir_objectchecks; procedure dir_objectchecks;
begin begin
do_localswitch(cs_check_object); do_localswitch(cs_check_object);
@ -1907,6 +1913,7 @@ unit scandir;
AddDirective('BOOLEVAL',directive_all, @dir_booleval); AddDirective('BOOLEVAL',directive_all, @dir_booleval);
AddDirective('BITPACKING',directive_all, @dir_bitpacking); AddDirective('BITPACKING',directive_all, @dir_bitpacking);
AddDirective('CALLING',directive_all, @dir_calling); AddDirective('CALLING',directive_all, @dir_calling);
AddDirective('CHECKFPUEXCEPTIONS',directive_all, @dir_checkfpuexceptions);
AddDirective('CHECKLOWADDRLOADS',directive_all, @dir_checklowaddrloads); AddDirective('CHECKLOWADDRLOADS',directive_all, @dir_checklowaddrloads);
AddDirective('CHECKPOINTER',directive_all, @dir_checkpointer); AddDirective('CHECKPOINTER',directive_all, @dir_checkpointer);
AddDirective('CODEALIGN',directive_all, @dir_codealign); AddDirective('CODEALIGN',directive_all, @dir_codealign);

View File

@ -2211,7 +2211,7 @@ const
'Check low address loading', {cs_check_low_addr_load} 'Check low address loading', {cs_check_low_addr_load}
'Imported data', {cs_imported_data} 'Imported data', {cs_imported_data}
'Excess precision', {cs_excessprecision} 'Excess precision', {cs_excessprecision}
// 'Check fpu exceptions', {cs_check_fpu_exceptions} {not yet merged} 'Check fpu exceptions', {cs_check_fpu_exceptions}
// 'Check all case coverage', {cs_check_all_case_coverage} {not yet merged} // 'Check all case coverage', {cs_check_all_case_coverage} {not yet merged}
{ mmx } { mmx }
'Allow MMX instructions', {cs_mmx} 'Allow MMX instructions', {cs_mmx}