1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-17 15:46:05 +02:00

Arithmetic overflow checks

This commit is contained in:
Brian Fiete 2022-01-11 08:17:09 -05:00
parent 1f0d2dcc82
commit eb375362a1
29 changed files with 503 additions and 87 deletions

View file

@ -102,6 +102,8 @@ namespace IDE
[Reflect]
public bool? mEmitObjectAccessCheck; // Only valid with mObjectHasDebugFlags
[Reflect]
public bool? mArithmeticCheck;
[Reflect]
public int32? mAllocStackTraceDepth;
[Reflect]
public BuildOptions.AlwaysIncludeKind mReflectAlwaysInclude;
@ -135,6 +137,7 @@ namespace IDE
newVal.mInitLocalVariables = mInitLocalVariables;
newVal.mEmitDynamicCastCheck = mEmitDynamicCastCheck;
newVal.mEmitObjectAccessCheck = mEmitObjectAccessCheck;
newVal.mArithmeticCheck = mArithmeticCheck;
newVal.mAllocStackTraceDepth = mAllocStackTraceDepth;
newVal.mReflectAlwaysInclude = mReflectAlwaysInclude;
newVal.mReflectBoxing = mReflectBoxing;
@ -164,6 +167,8 @@ namespace IDE
mEmitDynamicCastCheck = data.GetBool("EmitDynamicCastCheck");
if (data.Contains("EmitObjectAccessCheck"))
mEmitObjectAccessCheck = data.GetBool("EmitObjectAccessCheck");
if (data.Contains("ArithmeticCheck"))
mArithmeticCheck = data.GetBool("ArithmeticCheck");
if (data.Contains("AllocStackTraceDepth"))
mAllocStackTraceDepth = data.GetInt("AllocStackTraceDepth");
@ -194,6 +199,7 @@ namespace IDE
data.ConditionalAdd("InitLocalVariables", mInitLocalVariables);
data.ConditionalAdd("EmitDynamicCastCheck", mEmitDynamicCastCheck);
data.ConditionalAdd("EmitObjectAccessCheck", mEmitObjectAccessCheck);
data.ConditionalAdd("ArithmeticCheck", mArithmeticCheck);
data.ConditionalAdd("AllocStackTraceDepth", mAllocStackTraceDepth);
data.ConditionalAdd("ReflectAlwaysInclude", mReflectAlwaysInclude);
data.ConditionalAdd("ReflectBoxing", mReflectBoxing);