mirror of
https://github.com/danbulant/Cosmos
synced 2026-05-24 12:35:31 +00:00
This commit is contained in:
parent
9bc82a9289
commit
d8ef43f129
1 changed files with 7 additions and 4 deletions
|
|
@ -116,14 +116,17 @@ namespace Cosmos.IL2CPU {
|
||||||
} else {
|
} else {
|
||||||
xCtor = mILOpsHi[xOpCodeVal & 0xFF];
|
xCtor = mILOpsHi[xOpCodeVal & 0xFF];
|
||||||
}
|
}
|
||||||
// TODO: Remove this if when all shortcut expansions are working again
|
// TODO: Remove this if when all shortcut expansions are completed
|
||||||
if (xCtor != null) {
|
if (xCtor != null) {
|
||||||
var xILOp = xCtor.Invoke(new object[] { xOpCode });
|
var xILOp = xCtor.Invoke(new object[] { xOpCode });
|
||||||
// What to pass to execute? Passing whole scanner may be inappropriate
|
// What to pass to execute? Passing whole scanner may be inappropriate
|
||||||
// Op needs info about branch targets for example
|
// Op needs info about branch targets for example
|
||||||
// are all branches within method? Maybe ILOpCode can include offset and
|
// are all branches within method?
|
||||||
// ILOp can reconcile from that and no need to pass anything?
|
//inherited execute in ILOpX6 for example can emit this label
|
||||||
//xILOp.Execute(this);
|
// MethodLabel + offset since we will need method labels anyways. Method label
|
||||||
|
// can be based on a UID generated by our compiler. ie 32 bits of UID + 32 bits offset
|
||||||
|
// UInt64 xUID = xMethodID << 32 | xOffset
|
||||||
|
//xILOp.Execute(xUID);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue