mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-04-07 09:47:52 +02:00
* m68k: do not generate unnecessary unaligned load sequences for byte loads into registers, this fixes tcnvint1 test on plain 68000
This commit is contained in:
parent
c42b8c43bd
commit
8f083f6342
@ -930,7 +930,13 @@ unit cgcpu;
|
||||
opsize: topsize;
|
||||
needsext: boolean;
|
||||
begin
|
||||
if needs_unaligned(ref.alignment,fromsize) then
|
||||
needsext:=tcgsize2size[fromsize]<tcgsize2size[tosize];
|
||||
if needsext then
|
||||
size:=fromsize
|
||||
else
|
||||
size:=tosize;
|
||||
|
||||
if needs_unaligned(ref.alignment,size) then
|
||||
begin
|
||||
//list.concat(tai_comment.create(strpnew('a_load_ref_reg calling unaligned')));
|
||||
a_load_ref_reg_unaligned(list,fromsize,tosize,ref,register);
|
||||
@ -940,11 +946,6 @@ unit cgcpu;
|
||||
href:=ref;
|
||||
fixref(list,href,false);
|
||||
|
||||
needsext:=tcgsize2size[fromsize]<tcgsize2size[tosize];
|
||||
if needsext then
|
||||
size:=fromsize
|
||||
else
|
||||
size:=tosize;
|
||||
opsize:=TCGSize2OpSize[size];
|
||||
if isaddressregister(register) and not (opsize in [S_L]) then
|
||||
hreg:=getintregister(list,OS_ADDR)
|
||||
|
Loading…
Reference in New Issue
Block a user