mirror of
https://github.com/pfusik/xasm.git
synced 2024-06-08 03:29:30 +00:00
Instruction pairing extended to more than two instructions.
This commit is contained in:
parent
8f06fec50c
commit
cca8c374f9
11
source/app.d
11
source/app.d
|
@ -2659,19 +2659,24 @@ unittest {
|
|||
void assemblyPair() {
|
||||
assert(!inOpcode);
|
||||
string instruction = readInstruction();
|
||||
if (!eol() && line[column] == ':') {
|
||||
string[] extraInstructions;
|
||||
while (!eol() && line[column] == ':') {
|
||||
pairing = true;
|
||||
column++;
|
||||
string instruction2 = readInstruction();
|
||||
extraInstructions ~= readInstruction();
|
||||
}
|
||||
if (!extraInstructions.empty) {
|
||||
int savedColumn = column;
|
||||
if (willSkip)
|
||||
warning("Skipping only the first instruction");
|
||||
assemblyInstruction(instruction);
|
||||
checkNoExtraCharacters();
|
||||
column = savedColumn;
|
||||
wereManyInstructions = false;
|
||||
foreach (instruction2; extraInstructions) {
|
||||
column = savedColumn;
|
||||
assemblyInstruction(instruction2);
|
||||
wereManyInstructions = true;
|
||||
}
|
||||
} else {
|
||||
pairing = false;
|
||||
assemblyInstruction(instruction);
|
||||
|
|
Loading…
Reference in New Issue
Block a user