Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/main' into BigIntegerDivide
Browse files Browse the repository at this point in the history
  • Loading branch information
kzrnm committed Feb 20, 2024
2 parents bfc39f7 + 9dc6ea6 commit a2893b8
Show file tree
Hide file tree
Showing 176 changed files with 2,908 additions and 1,975 deletions.
8 changes: 4 additions & 4 deletions docs/workflow/debugging/mono/wasm-debugging.md
Original file line number Diff line number Diff line change
Expand Up @@ -180,8 +180,8 @@ $func166 @ dotnet.wasm:0xba0a
$func2810 @ dotnet.wasm:0xabacf
$func1615 @ dotnet.wasm:0x6f8eb
$func1619 @ dotnet.wasm:0x6ff58
$mono_wasm_invoke_method @ dotnet.wasm:0x96c9
Module._mono_wasm_invoke_method @ dotnet.6.0.1.hopd7ipo8x.js:1
$mono_wasm_invoke_jsexport @ dotnet.wasm:0x96c9
Module.mono_wasm_invoke_jsexport @ dotnet.6.0.1.hopd7ipo8x.js:1
managed__Microsoft_AspNetCore_Components_WebAssembly__Microsoft_AspNetCore_Components_WebAssembly_Services_DefaultWebAssemblyJSRuntime_BeginInvokeDotNet @ managed__Microsoft_AspNetCore_Components_WebAssembly__Microsoft_AspNetCore_Components_WebAssembly_Services_DefaultWebAssemblyJSRuntime_BeginInvokeDotNet:19
beginInvokeDotNetFromJS @ blazor.webassembly.js:1
b @ blazor.webassembly.js:1
Expand Down Expand Up @@ -244,8 +244,8 @@ $mono_jit_runtime_invoke @ dotnet.wasm:0x1dec32
$do_runtime_invoke @ dotnet.wasm:0x95fca
$mono_runtime_try_invoke @ dotnet.wasm:0x966fe
$mono_runtime_invoke @ dotnet.wasm:0x98982
$mono_wasm_invoke_method @ dotnet.wasm:0x227de2
Module._mono_wasm_invoke_method @ dotnet..y6ggkhlo8e.js:9927
$mono_wasm_invoke_jsexport @ dotnet.wasm:0x227de2
Module.mono_wasm_invoke_jsexport @ dotnet..y6ggkhlo8e.js:9927
managed__Microsoft_AspNetCore_Components_WebAssembly__Microsoft_AspNetCore_Components_WebAssembly_Services_DefaultWebAssemblyJSRuntime_BeginInvokeDotNet @ managed__Microsoft_AspNetCore_Components_WebAssembly__Microsoft_AspNetCore_Components_WebAssembly_Services_DefaultWebAssemblyJSRuntime_BeginInvokeDotNet:19
beginInvokeDotNetFromJS @ blazor.webassembly.js:1
b @ blazor.webassembly.js:1
Expand Down
36 changes: 18 additions & 18 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
Expand Up @@ -314,43 +314,43 @@
<Uri>https://github.com/dotnet/llvm-project</Uri>
<Sha>9885e5aecc176ca701fc3527877d608bf7ccfb7d</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="9.0.0-preview.2.24111.9">
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="runtime.native.System.IO.Ports" Version="9.0.0-preview.2.24111.9">
<Dependency Name="runtime.native.System.IO.Ports" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.ILAsm" Version="9.0.0-preview.2.24111.9">
<Dependency Name="Microsoft.NETCore.ILAsm" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="Microsoft.NET.Sdk.IL" Version="9.0.0-preview.2.24111.9">
<Dependency Name="Microsoft.NET.Sdk.IL" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="System.Text.Json" Version="9.0.0-preview.2.24111.9">
<Dependency Name="System.Text.Json" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<!-- Intermediate is necessary for source build. -->
<Dependency Name="Microsoft.SourceBuild.Intermediate.runtime.linux-x64" Version="9.0.0-preview.2.24111.9">
<Dependency Name="Microsoft.SourceBuild.Intermediate.runtime.linux-x64" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
<SourceBuild RepoName="runtime" ManagedOnly="false" />
</Dependency>
<Dependency Name="Microsoft.DotNet.ILCompiler" Version="9.0.0-preview.2.24111.9">
<Dependency Name="Microsoft.DotNet.ILCompiler" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="System.Reflection.Metadata" Version="9.0.0-preview.2.24111.9">
<Dependency Name="System.Reflection.Metadata" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="System.Reflection.MetadataLoadContext" Version="9.0.0-preview.2.24111.9">
<Dependency Name="System.Reflection.MetadataLoadContext" Version="9.0.0-preview.2.24115.1">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>9699f39112b2aea89a05a74199baf9049db85537</Sha>
<Sha>963626276e11bf5587aaed69826b62682b05d9c4</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.XHarness.TestRunners.Common" Version="9.0.0-prerelease.24112.4">
<Uri>https://github.com/dotnet/xharness</Uri>
Expand Down
14 changes: 7 additions & 7 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -104,10 +104,10 @@
<!-- NuGet dependencies -->
<NuGetBuildTasksPackVersion>6.0.0-preview.1.102</NuGetBuildTasksPackVersion>
<!-- Installer dependencies -->
<MicrosoftNETCoreAppRuntimewinx64Version>9.0.0-preview.2.24111.9</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftNETCoreAppRuntimewinx64Version>9.0.0-preview.2.24115.1</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftExtensionsDependencyModelVersion>6.0.0</MicrosoftExtensionsDependencyModelVersion>
<!-- ILAsm dependencies -->
<MicrosoftNETCoreILAsmVersion>9.0.0-preview.2.24111.9</MicrosoftNETCoreILAsmVersion>
<MicrosoftNETCoreILAsmVersion>9.0.0-preview.2.24115.1</MicrosoftNETCoreILAsmVersion>
<!-- ObjWriter dependencies -->
<runtimelinuxarm64MicrosoftNETCoreRuntimeObjWriterVersion>16.0.5-alpha.1.24112.1</runtimelinuxarm64MicrosoftNETCoreRuntimeObjWriterVersion>
<runtimelinuxx64MicrosoftNETCoreRuntimeObjWriterVersion>16.0.5-alpha.1.24112.1</runtimelinuxx64MicrosoftNETCoreRuntimeObjWriterVersion>
Expand All @@ -128,19 +128,19 @@
<SystemDrawingCommonVersion>8.0.0</SystemDrawingCommonVersion>
<SystemIOFileSystemAccessControlVersion>5.0.0</SystemIOFileSystemAccessControlVersion>
<SystemMemoryVersion>4.5.5</SystemMemoryVersion>
<SystemReflectionMetadataVersion>9.0.0-preview.2.24111.9</SystemReflectionMetadataVersion>
<SystemReflectionMetadataLoadContextVersion>9.0.0-preview.2.24111.9</SystemReflectionMetadataLoadContextVersion>
<SystemReflectionMetadataVersion>9.0.0-preview.2.24115.1</SystemReflectionMetadataVersion>
<SystemReflectionMetadataLoadContextVersion>9.0.0-preview.2.24115.1</SystemReflectionMetadataLoadContextVersion>
<SystemSecurityAccessControlVersion>6.0.0</SystemSecurityAccessControlVersion>
<SystemSecurityCryptographyCngVersion>5.0.0</SystemSecurityCryptographyCngVersion>
<SystemSecurityCryptographyOpenSslVersion>5.0.0</SystemSecurityCryptographyOpenSslVersion>
<SystemSecurityPrincipalWindowsVersion>5.0.0</SystemSecurityPrincipalWindowsVersion>
<SystemSecurityPermissionsVersion>7.0.0</SystemSecurityPermissionsVersion>
<SystemTextJsonVersion>9.0.0-preview.2.24111.9</SystemTextJsonVersion>
<SystemTextJsonVersion>9.0.0-preview.2.24115.1</SystemTextJsonVersion>
<SystemRuntimeCompilerServicesUnsafeVersion>6.0.0</SystemRuntimeCompilerServicesUnsafeVersion>
<SystemThreadingAccessControlVersion>7.0.0</SystemThreadingAccessControlVersion>
<SystemThreadingTasksExtensionsVersion>4.5.4</SystemThreadingTasksExtensionsVersion>
<SystemValueTupleVersion>4.5.0</SystemValueTupleVersion>
<runtimenativeSystemIOPortsVersion>9.0.0-preview.2.24111.9</runtimenativeSystemIOPortsVersion>
<runtimenativeSystemIOPortsVersion>9.0.0-preview.2.24115.1</runtimenativeSystemIOPortsVersion>
<!-- Keep toolset versions in sync with dotnet/msbuild and dotnet/sdk -->
<SystemCollectionsImmutableToolsetVersion>8.0.0</SystemCollectionsImmutableToolsetVersion>
<SystemReflectionMetadataToolsetVersion>8.0.0</SystemReflectionMetadataToolsetVersion>
Expand Down Expand Up @@ -218,7 +218,7 @@
<!-- Mono Cecil -->
<MicrosoftDotNetCecilVersion>0.11.4-alpha.24112.1</MicrosoftDotNetCecilVersion>
<!-- ILCompiler -->
<MicrosoftDotNetILCompilerVersion>9.0.0-preview.2.24111.9</MicrosoftDotNetILCompilerVersion>
<MicrosoftDotNetILCompilerVersion>9.0.0-preview.2.24115.1</MicrosoftDotNetILCompilerVersion>
<!-- ICU -->
<MicrosoftNETCoreRuntimeICUTransportVersion>9.0.0-preview.2.24112.1</MicrosoftNETCoreRuntimeICUTransportVersion>
<!-- MsQuic -->
Expand Down
18 changes: 10 additions & 8 deletions eng/install-native-dependencies.sh
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,19 @@ case "$os" in
. /etc/os-release
fi

if [ "$ID" != "debian" ] && [ "$ID_LIKE" != "debian" ]; then
if [ "$ID" = "debian" ] || [ "$ID_LIKE" = "debian" ]; then
apt update

apt install -y build-essential gettext locales cmake llvm clang lldb liblldb-dev libunwind8-dev libicu-dev liblttng-ust-dev \
libssl-dev libkrb5-dev zlib1g-dev

localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
elif [ "$ID" = "alpine" ]; then
apk add build-base cmake bash curl clang llvm-dev krb5-dev lttng-ust-dev icu-dev zlib-dev openssl-dev
else
echo "Unsupported distro. distro: $ID"
exit 1
fi

apt update

apt install -y build-essential gettext locales cmake llvm clang lldb liblldb-dev libunwind8-dev libicu-dev liblttng-ust-dev \
libssl-dev libkrb5-dev zlib1g-dev

localedef -i en_US -c -f UTF-8 -A /usr/share/locale/locale.alias en_US.UTF-8
;;

osx|maccatalyst|ios|iossimulator|tvos|tvossimulator)
Expand Down
19 changes: 9 additions & 10 deletions eng/testing/ChromeVersions.props
Original file line number Diff line number Diff line change
@@ -1,13 +1,12 @@
<Project>
<PropertyGroup>
<linux_ChromeVersion>120.0.6099.129</linux_ChromeVersion>
<linux_ChromeRevision>1217362</linux_ChromeRevision>
<linux_ChromeBaseSnapshotUrl>https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/1217362</linux_ChromeBaseSnapshotUrl>
<linux_V8Version>12.0.267</linux_V8Version>

<win_ChromeVersion>120.0.6099.130</win_ChromeVersion>
<win_ChromeRevision>1217362</win_ChromeRevision>
<win_ChromeBaseSnapshotUrl>https://storage.googleapis.com/chromium-browser-snapshots/Win_x64/1217378</win_ChromeBaseSnapshotUrl>
<win_V8Version>12.0.267</win_V8Version>
<linux_ChromeVersion>121.0.6167.184</linux_ChromeVersion>
<linux_ChromeRevision>1233107</linux_ChromeRevision>
<linux_ChromeBaseSnapshotUrl>https://storage.googleapis.com/chromium-browser-snapshots/Linux_x64/1233114</linux_ChromeBaseSnapshotUrl>
<linux_V8Version>12.1.285</linux_V8Version>
<win_ChromeVersion>121.0.6167.185</win_ChromeVersion>
<win_ChromeRevision>1233107</win_ChromeRevision>
<win_ChromeBaseSnapshotUrl>https://storage.googleapis.com/chromium-browser-snapshots/Win_x64/1233136</win_ChromeBaseSnapshotUrl>
<win_V8Version>12.1.285</win_V8Version>
</PropertyGroup>
</Project>
</Project>
2 changes: 1 addition & 1 deletion global.json
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,6 @@
"Microsoft.DotNet.SharedFramework.Sdk": "9.0.0-beta.24112.1",
"Microsoft.Build.NoTargets": "3.7.0",
"Microsoft.Build.Traversal": "3.4.0",
"Microsoft.NET.Sdk.IL": "9.0.0-preview.2.24111.9"
"Microsoft.NET.Sdk.IL": "9.0.0-preview.2.24115.1"
}
}
5 changes: 0 additions & 5 deletions src/coreclr/inc/clrconfigvalues.h
Original file line number Diff line number Diff line change
Expand Up @@ -304,12 +304,7 @@ RETAIL_CONFIG_DWORD_INFO(EXTERNAL_JitDebuggable, W("JitDebuggable"), 0, "If set,
#endif
RETAIL_CONFIG_DWORD_INFO(INTERNAL_JitEnableNoWayAssert, W("JitEnableNoWayAssert"), INTERNAL_JitEnableNoWayAssert_Default, "")

#if defined(TARGET_RISCV64)
// TODO-RISCV64-CQ: In RISCV64, currently jitc always generates JitFramed codes.
RETAIL_CONFIG_DWORD_INFO(UNSUPPORTED_JitFramed, W("JitFramed"), 1, "Forces EBP frames")
#else
RETAIL_CONFIG_DWORD_INFO(UNSUPPORTED_JitFramed, W("JitFramed"), 0, "Forces EBP frames")
#endif // TARGET_RISCV64
CONFIG_DWORD_INFO(INTERNAL_JitThrowOnAssertionFailure, W("JitThrowOnAssertionFailure"), 0, "Throw managed exception on assertion failures during JIT instead of failfast")
CONFIG_DWORD_INFO(INTERNAL_JitGCStress, W("JitGCStress"), 0, "GC stress mode for jit")
CONFIG_DWORD_INFO(INTERNAL_JitHeartbeat, W("JitHeartbeat"), 0, "")
Expand Down
12 changes: 6 additions & 6 deletions src/coreclr/jit/block.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -658,12 +658,12 @@ void BasicBlock::dspKind() const
}
else
{
const unsigned jumpCnt = bbEhfTargets->bbeCount;
BasicBlock** const jumpTab = bbEhfTargets->bbeSuccs;
const unsigned jumpCnt = bbEhfTargets->bbeCount;
FlowEdge** const jumpTab = bbEhfTargets->bbeSuccs;

for (unsigned i = 0; i < jumpCnt; i++)
{
printf("%c%s", (i == 0) ? ' ' : ',', dspBlockNum(jumpTab[i]));
printf("%c%s", (i == 0) ? ' ' : ',', dspBlockNum(jumpTab[i]->getDestinationBlock()));
}
}

Expand Down Expand Up @@ -1214,7 +1214,7 @@ BasicBlock* BasicBlock::GetSucc(unsigned i) const
}

case BBJ_EHFINALLYRET:
return bbEhfTargets->bbeSuccs[i];
return bbEhfTargets->bbeSuccs[i]->getDestinationBlock();

case BBJ_SWITCH:
return bbSwtTargets->bbsDstTab[i];
Expand Down Expand Up @@ -1315,7 +1315,7 @@ BasicBlock* BasicBlock::GetSucc(unsigned i, Compiler* comp)
case BBJ_EHFINALLYRET:
assert(bbEhfTargets != nullptr);
assert(i < bbEhfTargets->bbeCount);
return bbEhfTargets->bbeSuccs[i];
return bbEhfTargets->bbeSuccs[i]->getDestinationBlock();

case BBJ_CALLFINALLY:
case BBJ_CALLFINALLYRET:
Expand Down Expand Up @@ -1792,7 +1792,7 @@ BBehfDesc::BBehfDesc(Compiler* comp, const BBehfDesc* other) : bbeCount(other->b
{
// Allocate and fill in a new dst tab
//
bbeSuccs = new (comp, CMK_BasicBlock) BasicBlock*[bbeCount];
bbeSuccs = new (comp, CMK_FlowEdge) FlowEdge*[bbeCount];
for (unsigned i = 0; i < bbeCount; i++)
{
bbeSuccs[i] = other->bbeSuccs[i];
Expand Down
78 changes: 60 additions & 18 deletions src/coreclr/jit/block.h
Original file line number Diff line number Diff line change
Expand Up @@ -314,21 +314,27 @@ class PredBlockList
//
class BBArrayIterator
{
BasicBlock* const* m_bbEntry;
// Quirk: Some BasicBlock kinds refer to their successors with BasicBlock pointers,
// while others use FlowEdge pointers. Eventually, every type will use FlowEdge pointers.
// For now, support iterating with both types.
union {
BasicBlock* const* m_bbEntry;
FlowEdge* const* m_edgeEntry;
};

bool iterateEdges;

public:
BBArrayIterator(BasicBlock* const* bbEntry) : m_bbEntry(bbEntry)
BBArrayIterator(BasicBlock* const* bbEntry) : m_bbEntry(bbEntry), iterateEdges(false)
{
}

BasicBlock* operator*() const
BBArrayIterator(FlowEdge* const* edgeEntry) : m_edgeEntry(edgeEntry), iterateEdges(true)
{
assert(m_bbEntry != nullptr);
BasicBlock* bTarget = *m_bbEntry;
assert(bTarget != nullptr);
return bTarget;
}

BasicBlock* operator*() const;

BBArrayIterator& operator++()
{
assert(m_bbEntry != nullptr);
Expand Down Expand Up @@ -1570,9 +1576,22 @@ struct BasicBlock : private LIR::Range
// need to call a function or execute another `switch` to get them. Also, pre-compute the begin and end
// points of the iteration, for use by BBArrayIterator. `m_begin` and `m_end` will either point at
// `m_succs` or at the switch table successor array.
BasicBlock* m_succs[2];
BasicBlock* const* m_begin;
BasicBlock* const* m_end;
BasicBlock* m_succs[2];

// Quirk: Some BasicBlock kinds refer to their successors with BasicBlock pointers,
// while others use FlowEdge pointers. Eventually, every type will use FlowEdge pointers.
// For now, support iterating with both types.
union {
BasicBlock* const* m_begin;
FlowEdge* const* m_beginEdge;
};

union {
BasicBlock* const* m_end;
FlowEdge* const* m_endEdge;
};

bool iterateEdges;

public:
BBSuccList(const BasicBlock* block);
Expand Down Expand Up @@ -1879,8 +1898,8 @@ inline BBArrayIterator BBSwitchTargetList::end() const
//
struct BBehfDesc
{
BasicBlock** bbeSuccs; // array of `BasicBlock*` pointing to BBJ_EHFINALLYRET block successors
unsigned bbeCount; // size of `bbeSuccs` array
FlowEdge** bbeSuccs; // array of `FlowEdge*` pointing to BBJ_EHFINALLYRET block successors
unsigned bbeCount; // size of `bbeSuccs` array

BBehfDesc() : bbeSuccs(nullptr), bbeCount(0)
{
Expand Down Expand Up @@ -1913,6 +1932,8 @@ inline BBArrayIterator BBEhfSuccList::end() const
inline BasicBlock::BBSuccList::BBSuccList(const BasicBlock* block)
{
assert(block != nullptr);
iterateEdges = false;

switch (block->bbKind)
{
case BBJ_THROW:
Expand Down Expand Up @@ -1957,14 +1978,16 @@ inline BasicBlock::BBSuccList::BBSuccList(const BasicBlock* block)
// been computed.
if (block->GetEhfTargets() == nullptr)
{
m_begin = nullptr;
m_end = nullptr;
m_beginEdge = nullptr;
m_endEdge = nullptr;
}
else
{
m_begin = block->GetEhfTargets()->bbeSuccs;
m_end = block->GetEhfTargets()->bbeSuccs + block->GetEhfTargets()->bbeCount;
m_beginEdge = block->GetEhfTargets()->bbeSuccs;
m_endEdge = block->GetEhfTargets()->bbeSuccs + block->GetEhfTargets()->bbeCount;
}

iterateEdges = true;
break;

case BBJ_SWITCH:
Expand All @@ -1984,12 +2007,12 @@ inline BasicBlock::BBSuccList::BBSuccList(const BasicBlock* block)

inline BBArrayIterator BasicBlock::BBSuccList::begin() const
{
return BBArrayIterator(m_begin);
return (iterateEdges ? BBArrayIterator(m_beginEdge) : BBArrayIterator(m_begin));
}

inline BBArrayIterator BasicBlock::BBSuccList::end() const
{
return BBArrayIterator(m_end);
return (iterateEdges ? BBArrayIterator(m_endEdge) : BBArrayIterator(m_end));
}

// We have a simpler struct, BasicBlockList, which is simply a singly-linked
Expand Down Expand Up @@ -2192,6 +2215,25 @@ struct FlowEdge
}
};

// BasicBlock iterator implementations (that are required to be defined after the declaration of FlowEdge)

inline BasicBlock* BBArrayIterator::operator*() const
{
if (iterateEdges)
{
assert(m_edgeEntry != nullptr);
FlowEdge* edgeTarget = *m_edgeEntry;
assert(edgeTarget != nullptr);
assert(edgeTarget->getDestinationBlock() != nullptr);
return edgeTarget->getDestinationBlock();
}

assert(m_bbEntry != nullptr);
BasicBlock* bTarget = *m_bbEntry;
assert(bTarget != nullptr);
return bTarget;
}

// Pred list iterator implementations (that are required to be defined after the declaration of BasicBlock and FlowEdge)

inline PredEdgeList::iterator::iterator(FlowEdge* pred) : m_pred(pred)
Expand Down
3 changes: 2 additions & 1 deletion src/coreclr/jit/codegencommon.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2075,7 +2075,8 @@ void CodeGen::genEmitMachineCode()
{
printf("; ============================================================\n\n");
}
printf(""); // in our logic this causes a flush

fflush(jitstdout());
}

if (verbose)
Expand Down

0 comments on commit a2893b8

Please sign in to comment.