You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 41b8bbf
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: docs/design/datacontracts/GCInfo.md
+9Lines changed: 9 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,15 @@ This contract is for fetching information related to GCInfo associated with nati
4
4
5
5
The GCInfo contract has platform specific implementations as GCInfo differs per architecture. With the exception of x86, all platforms have a common encoding scheme with different encoding lengths and normalization functions for data. x86 uses an entirely different scheme which is partially supported by this contract.
6
6
7
+
WebAssembly uses the common decoder with `Wasm32GcInfoEncoding` traits from
8
+
`src/coreclr/inc/gcinfotypes.h`: code lengths/offsets and stack offsets are
9
+
unscaled, the code-length encoding base is 6, and there is no fixed stack
10
+
parameter scratch area. The platform encoding has no interruptible-range
11
+
count in its fat header (`HAS_INTERRUPTIBLE_RANGES` is false).
12
+
`DecodeInterpreterGCInfo` uses the separate interpreter traits even on
13
+
WebAssembly, including its code-length encoding base of 8 and its
0 commit comments