Update HCS_HC.sinc

Incorporate fixes from PR
This commit is contained in:
philpem 2024-10-29 19:25:20 +00:00 committed by GitHub
parent 67bfea173f
commit e04e47a745
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -114,15 +114,15 @@ oprx8_16_SP: imm8,SP is imm8 & SP { address:2 = SP + imm8; export *:2 addres
# X or HIX addressing # X or HIX addressing
@if defined(HC05) @if defined(HC05)
oprx8_8_X: imm8,X is imm8 & X { address:2 = zext(X) + imm8; export *:1 address; } oprx8_8_X: imm8,X is imm8 & X { address:2 = zext(X) + imm8; export address; }
oprx16_8_X: imm16,X is imm16 & X { address:2 = zext(X) + imm16; export *:1 address; } oprx16_8_X: imm16,X is imm16 & X { address:2 = zext(X) + imm16; export address; }
comma_X: ","X is X { address:2 = zext(X); export *:1 address; } comma_X: ","X is X { address:2 = zext(X); export address; }
@endif @endif
@if defined(HCS08) || defined(HC08) @if defined(HCS08) || defined(HC08)
oprx8_8_X: imm8,X is imm8 & X { address:2 = HIX + imm8; export *:1 address; } oprx8_8_X: imm8,X is imm8 & X { address:2 = HIX + imm8; export address; }
oprx16_8_X: imm16,X is imm16 & X { address:2 = HIX + imm16; export *:1 address; } oprx16_8_X: imm16,X is imm16 & X { address:2 = HIX + imm16; export address; }
comma_X: ","X is X { address:2 = HIX; export *:1 address; } comma_X: ","X is X { address:2 = HIX; export address; }
@endif @endif
@if defined(HCS08) @if defined(HCS08)
@ -136,9 +136,9 @@ oprx16_16_X: imm16,X is imm16 & X { address:2 = HIX + imm16; export *:2 a
OP1: iopr8i is op4_6=2; iopr8i { export iopr8i; } OP1: iopr8i is op4_6=2; iopr8i { export iopr8i; }
OP1: opr8a_8 is op4_6=3; opr8a_8 { export opr8a_8; } OP1: opr8a_8 is op4_6=3; opr8a_8 { export opr8a_8; }
OP1: opr16a_8 is op4_6=4; opr16a_8 { export opr16a_8; } OP1: opr16a_8 is op4_6=4; opr16a_8 { export opr16a_8; }
OP1: oprx16_8_X is op4_6=5; oprx16_8_X { export oprx16_8_X; } OP1: oprx16_8_X is op4_6=5; oprx16_8_X { export *:1 oprx16_8_X; }
OP1: oprx8_8_X is op4_6=6; oprx8_8_X { export oprx8_8_X; } OP1: oprx8_8_X is op4_6=6; oprx8_8_X { export *:1 oprx8_8_X; }
OP1: comma_X is op4_6=7 & comma_X { export comma_X; } OP1: comma_X is op4_6=7 & comma_X { export *:1 comma_X; }
@if defined(HCS08) || defined(HC08) @if defined(HCS08) || defined(HC08)
op2_opr8a: imm8 is imm8 { export *:1 imm8; } op2_opr8a: imm8 is imm8 { export *:1 imm8; }
@ -1258,7 +1258,7 @@ macro Push2(operand) {
@if defined(HCS08) || defined(HC08) || defined(HC05) @if defined(HCS08) || defined(HC08) || defined(HC05)
:JMP ADDRI is (op=0xDC | op=0xEC | op=0xFC) ... & ADDRI :JMP ADDRI is (op=0xDC | op=0xEC | op=0xFC) ... & ADDRI
{ {
goto ADDRI; goto [ADDRI];
} }
@endif @endif
@ -1278,7 +1278,7 @@ macro Push2(operand) {
tmp:2 = inst_next; tmp:2 = inst_next;
Push2( tmp ); Push2( tmp );
call ADDRI; call [ADDRI];
} }
@endif @endif
@ -2074,4 +2074,3 @@ macro Push2(operand) {
wait(); wait();
} }
@endif @endif