|
@@ -330,7 +330,7 @@ implementation
|
|
|
begin
|
|
|
secondpass(left);
|
|
|
if left.location.loc<>LOC_MMREGISTER then
|
|
|
- hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,false);
|
|
|
+ hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,UseAVX);
|
|
|
if UseAVX then
|
|
|
begin
|
|
|
location_reset(location,LOC_MMREGISTER,def_cgsize(resultdef));
|
|
@@ -377,7 +377,7 @@ implementation
|
|
|
if use_vectorfpu(left.resultdef) then
|
|
|
begin
|
|
|
secondpass(left);
|
|
|
- hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,false);
|
|
|
+ hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,true);
|
|
|
location_reset(location,LOC_REGISTER,OS_S64);
|
|
|
location.register:=cg.getintregister(current_asmdata.CurrAsmList,OS_S64);
|
|
|
if UseAVX then
|
|
@@ -421,7 +421,7 @@ implementation
|
|
|
not((left.location.loc=LOC_FPUREGISTER) and (current_settings.fputype>=fpu_sse3)) then
|
|
|
begin
|
|
|
secondpass(left);
|
|
|
- hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,false);
|
|
|
+ hlcg.location_force_mmregscalar(current_asmdata.CurrAsmList,left.location,left.resultdef,true);
|
|
|
location_reset(location,LOC_REGISTER,OS_S64);
|
|
|
location.register:=cg.getintregister(current_asmdata.CurrAsmList,OS_S64);
|
|
|
if UseAVX then
|