as: allow upper-case instruction mnemonics

This commit is contained in:
Mikael Pettersson
2023-10-09 21:16:11 +02:00
parent 67361ef2d8
commit d0c78d4423

View File

@@ -192,7 +192,7 @@ insn_ea_index(ScanState, Location, Name, AccOrDev, At, Displacement) ->
make_insn(Location, Name, AccOrDev, At, Displacement, Index) ->
Models = ?PDP10_KL10_271, % FIXME: make dynamic
case pdp10_opcodes:insn_from_name(Models, Name, AccOrDev =/= false) of
case insn_from_name(Models, Name, AccOrDev =/= false) of
false -> badinsn(Location, "invalid mnemonic ~s", Name);
#pdp10_insn_desc{ high13 = High13
, format = Format
@@ -218,6 +218,15 @@ make_insn(Location, Name, AccOrDev, At, Displacement, Index) ->
end
end.
insn_from_name(Models, Name, HaveA) ->
case pdp10_opcodes:insn_from_name(Models, Name, HaveA) of
false ->
%% To simplify porting code written for MACRO-10 we accept
%% mnemonics written in upper-case.
pdp10_opcodes:insn_from_name(Models, string:lowercase(Name), HaveA);
Insn -> Insn
end.
make_high13(Location, Name, AccOrDev, High13, Format) ->
case {Format, AccOrDev} of
{?PDP10_INSN_A_OPCODE, false} ->