mirror of
https://github.com/danbulant/Cosmos
synced 2026-06-06 00:03:10 +00:00
hacky fix for M's latest goo. Will clean up next.
This commit is contained in:
parent
340b586f7e
commit
d683bf89bd
1 changed files with 6 additions and 2 deletions
|
|
@ -99,12 +99,16 @@ namespace Indy.IL2CPU.IL.X86 {
|
||||||
new CPUx86.Pushd("0" + mMethodIdentifier.ToString("X") + "h");
|
new CPUx86.Pushd("0" + mMethodIdentifier.ToString("X") + "h");
|
||||||
new CPUx86.Call(CPU.Label.GenerateLabelName(VTablesImplRefs.GetMethodAddressForTypeRef));
|
new CPUx86.Call(CPU.Label.GenerateLabelName(VTablesImplRefs.GetMethodAddressForTypeRef));
|
||||||
|
|
||||||
int xTest = 1;
|
int xTest = 3;
|
||||||
if (xTest == 1) {
|
if (xTest == 1) {
|
||||||
// M - Ok, Frode/Guess - Crash
|
// M - Ok, Frode/Guess - Crash
|
||||||
new CPUx86.Pop("eax");
|
new CPUx86.Pop("eax");
|
||||||
} else if (xTest == 2) {
|
} else if (xTest == 2) {
|
||||||
// M - Box problem, Frode/Guess - Ok
|
// M - Box problem, Frode/Guess - Ok
|
||||||
|
} else if (xTest == 3) {
|
||||||
|
// M - Box problem,, Frode/Guess - Ok
|
||||||
|
new CPUx86.Pop("eax");
|
||||||
|
new CPUx86.Push("eax");
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
@ -122,7 +126,7 @@ namespace Indy.IL2CPU.IL.X86 {
|
||||||
xEmitCleanup);
|
xEmitCleanup);
|
||||||
new CPU.Label(mLabelName + "_AfterAddressCheck");
|
new CPU.Label(mLabelName + "_AfterAddressCheck");
|
||||||
if (mTargetMethodInfo.Arguments[0].ArgumentType == typeof(object)) {
|
if (mTargetMethodInfo.Arguments[0].ArgumentType == typeof(object)) {
|
||||||
new CPUx86.Push("eax");
|
///////new CPUx86.Push("eax");
|
||||||
/*
|
/*
|
||||||
* On the stack now:
|
* On the stack now:
|
||||||
* $esp method to call
|
* $esp method to call
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue