diff options
Diffstat (limited to 'compiler/m68k/ra68kmot.pas')
-rw-r--r-- | compiler/m68k/ra68kmot.pas | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/compiler/m68k/ra68kmot.pas b/compiler/m68k/ra68kmot.pas index ba7f0a3b4e..184a9742ae 100644 --- a/compiler/m68k/ra68kmot.pas +++ b/compiler/m68k/ra68kmot.pas @@ -216,6 +216,11 @@ const actasmregister:=std_regnum_search(lower(s)); if actasmregister<>NR_NO then begin + { this is a hack. if the reg is valid, and its string doesn't + contain a dot, we make sure it's a full size reg (KB) } + if (getregtype(actasmregister) in [R_ADDRESSREGISTER,R_INTREGISTER]) and + (Pos('.',s) = 0) then + setsubreg(actasmregister,R_SUBWHOLE); result:=true; actasmtoken:=AS_REGISTER; end; @@ -1196,7 +1201,7 @@ const while actasmtoken <> AS_SEPARATOR do Consume(actasmtoken); end; - exit; + exit; end; { // (reg,reg .. // } Consume(AS_COMMA); |