diff options
Diffstat (limited to 'compiler/ncgmem.pas')
-rw-r--r-- | compiler/ncgmem.pas | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/ncgmem.pas b/compiler/ncgmem.pas index f892ec2674..5c57614157 100644 --- a/compiler/ncgmem.pas +++ b/compiler/ncgmem.pas @@ -1053,7 +1053,8 @@ implementation secondpass(right); { if mulsize = 1, we won't have to modify the index } - hlcg.location_force_reg(current_asmdata.CurrAsmList,right.location,right.resultdef,ptruinttype,true); + if not(right.location.loc in [LOC_CREGISTER,LOC_REGISTER]) or (right.location.size<>OS_ADDR) then + hlcg.location_force_reg(current_asmdata.CurrAsmList,right.location,right.resultdef,ptruinttype,true); if isjump then begin |