David Eichmann pushed to branch wip/davide/windows-dlls_sysm-test_master at Glasgow Haskell Compiler / GHC

Commits:

10 changed files:

Changes:

  • rts/Linker.c
    ... ... @@ -478,7 +478,17 @@ initLinker_ (int retain_cafs)
    478 478
         symhash = allocStrHashTable();
    
    479 479
     
    
    480 480
         /* populate the symbol table with stuff from the RTS */
    
    481
    -    initLinkerRtsSyms(symhash);
    
    481
    +    const RtsSymbolVal * rtsSyms = getRtsSymbols();
    
    482
    +    IF_DEBUG(linker, debugBelch("populating linker symbol table with built-in RTS symbols\n"));
    
    483
    +    for (const RtsSymbolVal *sym = rtsSyms; sym->lbl != NULL; sym++) {
    
    484
    +        IF_DEBUG(linker, debugBelch("initLinker: inserting rts symbol %s, %p\n", sym->lbl, sym->addr));
    
    485
    +        if (! ghciInsertSymbolTable(WSTR("(GHCi built-in symbols)"),
    
    486
    +                                    symhash, sym->lbl, sym->addr,
    
    487
    +                                    sym->strength, sym->type, 0, NULL)) {
    
    488
    +            barf("ghciInsertSymbolTable failed");
    
    489
    +        }
    
    490
    +    }
    
    491
    +    IF_DEBUG(linker, debugBelch("done with built-in RTS symbols\n"));
    
    482 492
     
    
    483 493
         /* Add extra symbols. rtsExtraSyms() is a weakly defined symbol in the rts,
    
    484 494
          * that can be overrided by linking in an object with a corresponding
    

  • rts/RtsSymbols.c
    ... ... @@ -8,7 +8,9 @@
    8 8
     
    
    9 9
     #include "ghcplatform.h"
    
    10 10
     #include "Rts.h"
    
    11
    +#include "RtsUtils.h"
    
    11 12
     #include "RtsSymbols.h"
    
    13
    +#include "RtsUtils.h"
    
    12 14
     #include "LinkerInternals.h"
    
    13 15
     #include "PathUtils.h"
    
    14 16
     
    
    ... ... @@ -480,6 +482,7 @@ extern char **environ;
    480 482
           RTS_TICKY_SYMBOLS                                                 \
    
    481 483
           RTS_PROF_SYMBOLS                                                  \
    
    482 484
           RTS_LIBDW_SYMBOLS                                                 \
    
    485
    +      SymI_HasProto(getRtsSymbols)                                          \
    
    483 486
           SymI_HasProto(StgReturn)                                          \
    
    484 487
           SymI_HasDataProto(ghc_hs_iface)                                       \
    
    485 488
           SymI_HasDataProto(stg_gc_noregs)                                      \
    
    ... ... @@ -1236,42 +1239,46 @@ RTS_SYMBOLS_PRIM
    1236 1239
         { MAYBE_LEADING_UNDERSCORE_STR(#vvv),    \
    
    1237 1240
           (void*)(&(xxx)), strength, ty },
    
    1238 1241
     
    
    1242
    +static RtsSymbolVal * rtsSyms = NULL;
    
    1239 1243
     
    
    1244
    +// Initialize and return a pointer to an array of rts symbols.
    
    1245
    +// The final element marks the end of the array and has `.lbl=NULL`.
    
    1246
    +RtsSymbolVal const * getRtsSymbols(void) {
    
    1247
    +      if (!rtsSyms) {
    
    1248
    +            /* The address of data symbols with the dllimport attribute are not
    
    1249
    +            * compile-time constants and so cannot be used in constant initialisers.
    
    1250
    +            * For this reason, rtsSyms is a local variable within this function
    
    1251
    +            * rather than a global constant (as it was historically).
    
    1252
    +            */
    
    1253
    +            const RtsSymbolVal _rtsSyms[] = {
    
    1254
    +                  RTS_SYMBOLS
    
    1255
    +                  RTS_RET_SYMBOLS
    
    1256
    +                  RTS_POSIX_ONLY_SYMBOLS
    
    1257
    +                  RTS_MINGW_ONLY_SYMBOLS
    
    1258
    +                  RTS_DARWIN_ONLY_SYMBOLS
    
    1259
    +                  RTS_OPENBSD_ONLY_SYMBOLS
    
    1260
    +                  RTS_LIBGCC_SYMBOLS
    
    1261
    +                  RTS_ARCH_LIBGCC_SYMBOLS
    
    1262
    +                  RTS_FINI_ARRAY_SYMBOLS
    
    1263
    +                  RTS_LIBFFI_SYMBOLS
    
    1264
    +                  RTS_ARM_OUTLINE_ATOMIC_SYMBOLS
    
    1265
    +                  RTS_SYMBOLS_PRIM
    
    1266
    +                  SymI_HasDataProto(nonmoving_write_barrier_enabled)
    
    1267
    +                  { 0, 0, STRENGTH_NORMAL, SYM_TYPE_CODE } /* sentinel */
    
    1268
    +            };
    
    1240 1269
     
    
    1241
    -/* Initialize (if not already initialized) and return an array of symbols with stuff from the RTS. */
    
    1242
    -void initLinkerRtsSyms (StrHashTable *symhash) {
    
    1243
    -    /* The address of data symbols with the dllimport attribute are not
    
    1244
    -     * compile-time constants and so cannot be used in constant initialisers.
    
    1245
    -     * For this reason, rtsSyms is a local variable within this function
    
    1246
    -     * rather than a global constant (as it was historically).
    
    1247
    -     */
    
    1248
    -    const RtsSymbolVal rtsSyms[] = {
    
    1249
    -      RTS_SYMBOLS
    
    1250
    -      RTS_RET_SYMBOLS
    
    1251
    -      RTS_POSIX_ONLY_SYMBOLS
    
    1252
    -      RTS_MINGW_ONLY_SYMBOLS
    
    1253
    -      RTS_DARWIN_ONLY_SYMBOLS
    
    1254
    -      RTS_OPENBSD_ONLY_SYMBOLS
    
    1255
    -      RTS_LIBGCC_SYMBOLS
    
    1256
    -      RTS_ARCH_LIBGCC_SYMBOLS
    
    1257
    -      RTS_FINI_ARRAY_SYMBOLS
    
    1258
    -      RTS_LIBFFI_SYMBOLS
    
    1259
    -      RTS_ARM_OUTLINE_ATOMIC_SYMBOLS
    
    1260
    -      RTS_SYMBOLS_PRIM
    
    1261
    -      SymI_HasDataProto(nonmoving_write_barrier_enabled)
    
    1262
    -      { 0, 0, STRENGTH_NORMAL, SYM_TYPE_CODE } /* sentinel */
    
    1263
    -    };
    
    1270
    +            uint32_t n = 1;
    
    1271
    +            while (_rtsSyms[n].lbl != NULL) {
    
    1272
    +                  n++;
    
    1273
    +            }
    
    1274
    +
    
    1275
    +            rtsSyms = stgMallocBytes(n * sizeof(RtsSymbolVal), "getRtsSymbols");
    
    1276
    +            for (uint32_t i = 0; i < n; i++) {
    
    1277
    +                  rtsSyms[i] = _rtsSyms[i];
    
    1278
    +            }
    
    1279
    +      }
    
    1264 1280
     
    
    1265
    -    IF_DEBUG(linker, debugBelch("populating linker symbol table with built-in RTS symbols\n"));
    
    1266
    -    for (const RtsSymbolVal *sym = rtsSyms; sym->lbl != NULL; sym++) {
    
    1267
    -        IF_DEBUG(linker, debugBelch("initLinker: inserting rts symbol %s, %p\n", sym->lbl, sym->addr));
    
    1268
    -        if (! ghciInsertSymbolTable(WSTR("(GHCi built-in symbols)"),
    
    1269
    -                                    symhash, sym->lbl, sym->addr,
    
    1270
    -                                    sym->strength, sym->type, 0, NULL)) {
    
    1271
    -            barf("ghciInsertSymbolTable failed");
    
    1272
    -        }
    
    1273
    -    }
    
    1274
    -    IF_DEBUG(linker, debugBelch("done with built-in RTS symbols\n"));
    
    1281
    +      return rtsSyms;
    
    1275 1282
     }
    
    1276 1283
     
    
    1277 1284
     
    

  • rts/include/rts/RtsSymbols.h
    ... ... @@ -38,3 +38,4 @@ typedef struct _RtsSymbolVal {
    38 38
         SymType type;
    
    39 39
     } RtsSymbolVal;
    
    40 40
     
    
    41
    +RtsSymbolVal const * getRtsSymbols(void);

  • testsuite/driver/runtests.py
    ... ... @@ -284,32 +284,36 @@ def format_path(path):
    284 284
     # On Windows we need to set $PATH to include the paths to all the DLLs
    
    285 285
     # in order for the dynamic library tests to work.
    
    286 286
     if windows:
    
    287
    +    # Add mingw to PATH
    
    288
    +    topdir = config.libdir
    
    289
    +    mingw = os.path.abspath(os.path.join(topdir, '../mingw/bin'))
    
    290
    +    mingw = format_path(mingw)
    
    291
    +    ghc_env['PATH'] = os.pathsep.join([ghc_env.get("PATH", ""), mingw])
    
    292
    +
    
    293
    +    # Add ghc packages to PATH
    
    287 294
         try:
    
    288
    -        pkginfo = getStdout([config.ghc_pkg, 'dump'])
    
    295
    +        pkgs = getStdout([config.ghc_pkg, '--simple-output', 'list'])
    
    289 296
         except FileNotFoundError as err:
    
    290 297
             # This can happen when we are only running tests which don't depend on ghc (ie linters)
    
    291 298
             # In that case we probably haven't built ghc-pkg yet so this query will fail.
    
    292 299
             print (err)
    
    293 300
             print ("Failed to call ghc-pkg for windows path modification... some tests might fail")
    
    294
    -        pkginfo = ""
    
    295
    -    topdir = config.libdir
    
    296
    -    mingw = os.path.abspath(os.path.join(topdir, '../mingw/bin'))
    
    297
    -    mingw = format_path(mingw)
    
    298
    -    ghc_env['PATH'] = os.pathsep.join([ghc_env.get("PATH", ""), mingw])
    
    299
    -    for line in pkginfo.split('\n'):
    
    300
    -        if line.startswith('library-dirs:'):
    
    301
    -            path = line.rstrip()
    
    302
    -            path = str_removeprefix(path, 'library-dirs: ')
    
    303
    -            # Use string.replace instead of re.sub, because re.sub
    
    304
    -            # interprets backslashes in the replacement string as
    
    305
    -            # escape sequences.
    
    306
    -            path = path.replace('$topdir', topdir)
    
    301
    +        pkgs = ""
    
    302
    +
    
    303
    +    newPaths = set()
    
    304
    +    pkgs = pkgs.split(' ')
    
    305
    +    for pkg in pkgs:
    
    306
    +        for field in ['library-dirs', 'dynamic-library-dirs']:
    
    307
    +            path = getStdout([config.ghc_pkg, '--simple-output', 'field', pkg, field])
    
    308
    +            path = path.strip()
    
    307 309
                 if path.startswith('"'):
    
    308 310
                     path = re.sub('^"(.*)"$', '\\1', path)
    
    309 311
                     path = re.sub('\\\\(.)', '\\1', path)
    
    312
    +            path = format_path(path)
    
    313
    +            newPaths.add(path)
    
    310 314
     
    
    311
    -                path = format_path(path)
    
    312
    -                ghc_env['PATH'] = os.pathsep.join([path, ghc_env.get("PATH", "")])
    
    315
    +    for path in newPaths:
    
    316
    +        ghc_env['PATH'] = os.pathsep.join([path, ghc_env.get("PATH", "")])
    
    313 317
     
    
    314 318
     testopts_ctx_var.set(TestOptions())
    
    315 319
     
    

  • testsuite/tests/rts/symbols/Main.hs
    1
    +
    
    2
    +import Control.Applicative ((<|>))
    
    3
    +import qualified Data.Map.Lazy as M
    
    4
    +import Data.Maybe (fromJust)
    
    5
    +import System.Environment (getArgs)
    
    6
    +import System.IO (readFile)
    
    7
    +
    
    8
    +main :: IO ()
    
    9
    +main = do
    
    10
    +   args <- getArgs
    
    11
    +   case args of
    
    12
    +      ["dump"] -> dumpDeclaredSymbols
    
    13
    +      ["diff", declaredSymbolsFile, observedExportSymbolsFile, observedDllSymbolsFile] -> do
    
    14
    +         diffStr <- diff
    
    15
    +            <$> readFile declaredSymbolsFile
    
    16
    +            <*> readFile observedExportSymbolsFile
    
    17
    +            <*> readFile observedDllSymbolsFile
    
    18
    +         -- writeFile "<ghc root>/testsuite/tests/rts/symbols/rts-check-symbols.stdout"
    
    19
    +         putStrLn diffStr
    
    20
    +
    
    21
    +foreign import ccall "dumpDeclaredSymbols"
    
    22
    +   dumpDeclaredSymbols :: IO ()
    
    23
    +
    
    24
    +data CodeOrData = Code | Data
    
    25
    +   deriving (Show, Eq)
    
    26
    +
    
    27
    +-- Combine symbols from observedExportSymbolsStr and observedSymbolsStr (symbols observed form llvm-readobj) and
    
    28
    +-- compare that to declaredSymbolsStr (symbols declared in Symbols.c)
    
    29
    +diff :: String -> String -> String -> String
    
    30
    +diff declaredSymbolsStr observedExportSymbolsStr observedSymbolsStr = unlines $
    
    31
    +      [ "Symbols declared in RtsSymbols.c but not observed in the DSO:" ]
    
    32
    +   ++ [ "Declared> " ++ k ++ " " ++ show v | (k, v) <- M.toList diffInDeclaredSymbols ]
    
    33
    +   ++ [ "" ]
    
    34
    +   ++ [ "Symbols observed in the DSO but not declared in RtsSymbols.c:" ]
    
    35
    +   ++ [ "Observed> " ++ k ++ " " ++ show v | (k, v) <- M.toList diffInObservedSymbols ]
    
    36
    +   ++ [ "" ]
    
    37
    +   ++ [ "Symbols observed in the DSO and declared in RtsSymbols.c but with conflicting type:" ]
    
    38
    +   ++ [ "WrongType> " ++ k ++ " (declared, observed): (" ++ show declared ++ ", " ++ show observed ++ ")"
    
    39
    +         | (k, (declared, observed)) <- M.toList diffOnType ]
    
    40
    +   where
    
    41
    +      declaredSymbols :: M.Map String CodeOrData
    
    42
    +      declaredSymbols = readCodeOrData <$> linePairs declaredSymbolsStr
    
    43
    +
    
    44
    +      observedExportSymbols :: M.Map String CodeOrData
    
    45
    +      observedExportSymbols = readCodeOrData <$> linePairs observedExportSymbolsStr
    
    46
    +
    
    47
    +      observedDllSymbols :: M.Map String CodeOrData
    
    48
    +      observedDllSymbols = M.mapMaybe symTypeAndSectionToCodeOrData (linePairs3 observedSymbolsStr)
    
    49
    +
    
    50
    +      -- COFF exports take presidence over symbols.
    
    51
    +      -- This is important for info tables to be calssified as data in the face of Tabels Next To Code.
    
    52
    +      observedSymbols :: M.Map String CodeOrData
    
    53
    +      observedSymbols = observedExportSymbols `M.union` observedDllSymbols
    
    54
    +
    
    55
    +      -- Undeclared observed symbols
    
    56
    +      diffInObservedSymbols :: M.Map String CodeOrData
    
    57
    +      diffInObservedSymbols = observedSymbols M.\\ declaredSymbols
    
    58
    +
    
    59
    +      -- Declared unobserved symbols
    
    60
    +      diffInDeclaredSymbols :: M.Map String CodeOrData
    
    61
    +      diffInDeclaredSymbols = declaredSymbols M.\\ observedSymbols
    
    62
    +
    
    63
    +      -- Declared observed symbols with conflicting type
    
    64
    +      diffOnType :: M.Map String (CodeOrData, CodeOrData)
    
    65
    +      diffOnType = M.filter (\(a, b) -> a /= b) $ M.intersectionWith (,) declaredSymbols observedSymbols
    
    66
    +
    
    67
    +      linePairs :: String -> M.Map String String
    
    68
    +      linePairs = M.fromList . map (\str -> let [a,b] = words str in (a,b)) . filter (/= "") . lines
    
    69
    +
    
    70
    +      linePairs3 :: String -> M.Map String (String, String)
    
    71
    +      linePairs3 = M.fromList . map (\str -> let [a,b,c] = words str in (a,(b,c))) . filter (/= "") . lines
    
    72
    +
    
    73
    +      readCodeOrData :: String -> CodeOrData
    
    74
    +      readCodeOrData s = case s of
    
    75
    +         "code" -> Code
    
    76
    +         "data" -> Data
    
    77
    +
    
    78
    +      -- Returns Nothing if the symbol should be ignored
    
    79
    +      symTypeAndSectionToCodeOrData :: (String, String) -> Maybe CodeOrData
    
    80
    +      symTypeAndSectionToCodeOrData s = case s of
    
    81
    +         -- Imports
    
    82
    +         (_, "Undefined")     -> Nothing
    
    83
    +
    
    84
    +         ("File", _)     -> Nothing
    
    85
    +         ("None", _)     -> Nothing
    
    86
    +         ("Function", _) -> Just Code
    
    87
    +         ("Object", _)   -> Just Data
    
    88
    +         _ -> error ("Unknown symbol type / section: " ++ show s)

  • testsuite/tests/rts/symbols/Makefile
    1
    +TOP=../../..
    
    2
    +include $(TOP)/mk/boilerplate.mk
    
    3
    +include $(TOP)/mk/test.mk
    
    4
    +
    
    5
    +# This makefile rule only exists because TEST_HC is set in boilerplate.mk
    
    6
    +# and otherwise the TEST_HC variable wouldn't be set in the context of the bash script
    
    7
    +rts-check-symbols:
    
    8
    +	'$(TEST_HC)' $(TEST_HC_OPTS) -package containers -dynamic dumpDeclaredSymbols.c Main.hs -o Main > /dev/null
    
    9
    +	GHC_PKG="$(GHC_PKG)" GHC="$(TEST_HC)" ./rts-check-symbols.sh

  • testsuite/tests/rts/symbols/all.T
    1
    +test('rts-check-symbols', [
    
    2
    +    unless(have_dynamic(), skip),
    
    3
    +    extra_files(['rts-check-symbols.sh', 'dumpDeclaredSymbols.c', 'Main.hs'])],
    
    4
    +    makefile_test,
    
    5
    +    []
    
    6
    +)

  • testsuite/tests/rts/symbols/dumpDeclaredSymbols.c
    1
    +
    
    2
    +#include "Rts.h"
    
    3
    +#include "rts/RtsSymbols.h"
    
    4
    +
    
    5
    +#include <stdio.h>
    
    6
    +
    
    7
    +void dumpDeclaredSymbols(void);
    
    8
    +
    
    9
    +void dumpDeclaredSymbols(void) {
    
    10
    +    const RtsSymbolVal * declaredSyms = getRtsSymbols();
    
    11
    +    for (const RtsSymbolVal * sym = &declaredSyms[0]; sym->lbl; sym++) {
    
    12
    +        // Ignore hidden
    
    13
    +        if (sym->type & SYM_TYPE_HIDDEN) continue;
    
    14
    +
    
    15
    +        char * type = NULL;
    
    16
    +        if (sym->type & SYM_TYPE_CODE) {
    
    17
    +            type = "code";
    
    18
    +        } else if (sym->type & (SYM_TYPE_DATA | SYM_TYPE_INDIRECT_DATA)) {
    
    19
    +            type = "data";
    
    20
    +        }
    
    21
    +
    
    22
    +        if (type) {
    
    23
    +            printf("%s %s\n", sym->lbl, type);
    
    24
    +        }
    
    25
    +    }
    
    26
    +}

  • testsuite/tests/rts/symbols/rts-check-symbols.sh
    1
    +#!/usr/bin/env bash
    
    2
    +
    
    3
    +#
    
    4
    +# Check the diff between symbols exported from the RTS and those listed in RtsSymbols.c
    
    5
    +#
    
    6
    +
    
    7
    +DECLARED_SYMBOLS=declared_symbols.txt
    
    8
    +OBSERVED_EXPORT_SYMBOLS=observed_export_symbols.txt
    
    9
    +OBSERVED_DLL_SYMBOLS=observed_dll_symbols.txt
    
    10
    +
    
    11
    +# Discover if we're on windows
    
    12
    +case "$OSTYPE" in
    
    13
    +    "cygwin")
    
    14
    +        TYPE="windows"
    
    15
    +        ;;
    
    16
    +
    
    17
    +    *)
    
    18
    +        TYPE="elf"
    
    19
    +        ;;
    
    20
    +esac
    
    21
    +
    
    22
    +# Get rts Symbols listed in RtsSymbols.c
    
    23
    +./Main dump | sort > $DECLARED_SYMBOLS
    
    24
    +
    
    25
    +# Get rts DLL exports from the DLL
    
    26
    +# Match e.g.:
    
    27
    +#    libHSrts-1.0.3-ghc9.15.20260710.dll => /home/alice/myApp/bin/libHSrts-1.0.3-ghc9.15.20260710.dll (0x7ffebc9a0000)
    
    28
    +RTS_DYLIB_PATH=$(ldd Main | gawk 'match($0, /^\s*libHSrts-.* => (.+) \(.*\)$/, x) { print x[1] }')
    
    29
    +case "$TYPE" in
    
    30
    +    "elf")
    
    31
    +        echo "" > $OBSERVED_EXPORT_SYMBOLS
    
    32
    +        ;;
    
    33
    +
    
    34
    +    "windows")
    
    35
    +        # On windows we inspect the import library (*.dll.a) instead of the dll directly. This is important to get the correct type of info table symbols.
    
    36
    +        llvm-readobj --coff-exports "${RTS_DYLIB_PATH}.a" | awk -F': ' '/^Type:/{t=$2}/^Export name:/{n=$2}/^ *}/{print n, t}' | sort > $OBSERVED_EXPORT_SYMBOLS
    
    37
    +        ;;
    
    38
    +
    
    39
    +    *)
    
    40
    +        echo "Unknown TYPE=$TYPE"
    
    41
    +        exit 1
    
    42
    +        ;;
    
    43
    +esac
    
    44
    +
    
    45
    +case "$TYPE" in
    
    46
    +    "elf" | "windows")
    
    47
    +        # All global symbols
    
    48
    +        llvm-readobj --symbols        $RTS_DYLIB_PATH     | \
    
    49
    +            awk -F' ' '/^ *Symbol {/{g=0}/^ *Name:/{n=$2}/^ *Binding: *Global/{g=1}/^ *Type:/{t=$2}/^ *Section:/{s=$2}/^ *}/ && g{print n, t, s}' | \
    
    50
    +            sort \
    
    51
    +            > $OBSERVED_DLL_SYMBOLS
    
    52
    +        ;;
    
    53
    +
    
    54
    +    *)
    
    55
    +        echo "Unknown TYPE=$TYPE"
    
    56
    +        exit 1
    
    57
    +        ;;
    
    58
    +esac
    
    59
    +
    
    60
    +# Combine OBSERVED_EXPORT_SYMBOLS and OBSERVED_DLL_SYMBOLS and compare to declared symbols
    
    61
    +./Main diff $DECLARED_SYMBOLS $OBSERVED_EXPORT_SYMBOLS $OBSERVED_DLL_SYMBOLS

  • testsuite/tests/rts/symbols/rts-check-symbols.stdout
    1
    +Symbols declared in RtsSymbols.c but not observed in the DSO:
    
    2
    +Declared> StgReturn Code
    
    3
    +Declared> __udivti3 Code
    
    4
    +Declared> __umodti3 Code
    
    5
    +Declared> atomic_dec Code
    
    6
    +Declared> dirty_TVAR Code
    
    7
    +Declared> ffi_call Code
    
    8
    +Declared> ffi_prep_cif Code
    
    9
    +Declared> ffi_type_double Data
    
    10
    +Declared> ffi_type_float Data
    
    11
    +Declared> ffi_type_pointer Data
    
    12
    +Declared> ffi_type_sint16 Data
    
    13
    +Declared> ffi_type_sint32 Data
    
    14
    +Declared> ffi_type_sint64 Data
    
    15
    +Declared> ffi_type_sint8 Data
    
    16
    +Declared> ffi_type_uint16 Data
    
    17
    +Declared> ffi_type_uint32 Data
    
    18
    +Declared> ffi_type_uint64 Data
    
    19
    +Declared> ffi_type_uint8 Data
    
    20
    +Declared> ffi_type_void Data
    
    21
    +Declared> signal_handlers Code
    
    22
    +Declared> updateRemembSetPushThunk Code
    
    23
    +
    
    24
    +Symbols observed in the DSO but not declared in RtsSymbols.c:
    
    25
    +Observed> AP_STACK_sizeW Code
    
    26
    +Observed> AP_sizeW Code
    
    27
    +Observed> BLACKHOLE_sizeW Code
    
    28
    +Observed> Bdescr Code
    
    29
    +Observed> CHARLIKE_CLOSURE Code
    
    30
    +Observed> CONSTR_sizeW Code
    
    31
    +Observed> CONTINUATION_sizeW Code
    
    32
    +Observed> CON_INFO_PTR_TO_STRUCT Code
    
    33
    +Observed> FUN_INFO_PTR_TO_STRUCT Code
    
    34
    +Observed> FileEventLogWriter Data
    
    35
    +Observed> GET_CLOSURE_TAG Code
    
    36
    +Observed> GET_INFO Code
    
    37
    +Observed> GET_TAG Code
    
    38
    +Observed> INFO_PTR_TO_STRUCT Code
    
    39
    +Observed> INTLIKE_CLOSURE Code
    
    40
    +Observed> LOOKS_LIKE_CLOSURE_PTR Code
    
    41
    +Observed> LOOKS_LIKE_INFO_PTR Code
    
    42
    +Observed> LOOKS_LIKE_INFO_PTR_NOT_NULL Code
    
    43
    +Observed> LOOKS_LIKE_PTR Code
    
    44
    +Observed> NullEventLogWriter Data
    
    45
    +Observed> OS_TRY_ACQUIRE_LOCK Code
    
    46
    +Observed> PAP_sizeW Code
    
    47
    +Observed> RET_INFO_PTR_TO_STRUCT Code
    
    48
    +Observed> SET_INFO Code
    
    49
    +Observed> SET_INFO_RELAXED Code
    
    50
    +Observed> SET_INFO_RELEASE Code
    
    51
    +Observed> STATIC_LINK Code
    
    52
    +Observed> TAG_CLOSURE Code
    
    53
    +Observed> THUNK_INFO_PTR_TO_STRUCT Code
    
    54
    +Observed> THUNK_SELECTOR_sizeW Code
    
    55
    +Observed> UNTAG_CLOSURE Code
    
    56
    +Observed> UNTAG_CONST_CLOSURE Code
    
    57
    +Observed> UPD_BH_UPDATABLE_ctr Data
    
    58
    +Observed> __rts_fopen Code
    
    59
    +Observed> _warnFail Code
    
    60
    +Observed> addInitFini Code
    
    61
    +Observed> addProddableBlock Code
    
    62
    +Observed> allocAlignedGroupOnNode Code
    
    63
    +Observed> allocBlock Code
    
    64
    +Observed> allocBlockOnNode Code
    
    65
    +Observed> allocBlockOnNode_lock Code
    
    66
    +Observed> allocBlock_lock Code
    
    67
    +Observed> allocGroup Code
    
    68
    +Observed> allocGroupOnNode Code
    
    69
    +Observed> allocGroupOnNode_lock Code
    
    70
    +Observed> allocGroup_lock Code
    
    71
    +Observed> allocLimitKill Data
    
    72
    +Observed> allocLimitRunHook Data
    
    73
    +Observed> allocMBlockAlignedGroupOnNode Code
    
    74
    +Observed> allocateMightFail Code
    
    75
    +Observed> allocatePinned Code
    
    76
    +Observed> allocated_bytes_at_heapoverflow Data
    
    77
    +Observed> ap_sizeW Code
    
    78
    +Observed> ap_stack_sizeW Code
    
    79
    +Observed> arr_words_sizeW Code
    
    80
    +Observed> arr_words_words Code
    
    81
    +Observed> bco_sizeW Code
    
    82
    +Observed> broadcastCondition Code
    
    83
    +Observed> cas_word8 Code
    
    84
    +Observed> checkProddableBlock Code
    
    85
    +Observed> checkVectorSupport Code
    
    86
    +Observed> clearImportSymbol Code
    
    87
    +Observed> closeCondition Code
    
    88
    +Observed> closeMutex Code
    
    89
    +Observed> closure_sizeW Code
    
    90
    +Observed> collect_pointers Code
    
    91
    +Observed> compact_nfdata_full_sizeW Code
    
    92
    +Observed> complex_ccall_adjustor_template Data
    
    93
    +Observed> containsSpan Code
    
    94
    +Observed> continuation_sizeW Code
    
    95
    +Observed> createAttachedOSThread Code
    
    96
    +Observed> createGenThread Code
    
    97
    +Observed> createIOThread Code
    
    98
    +Observed> createOSThread Code
    
    99
    +Observed> createStrictIOThread Code
    
    100
    +Observed> createThread Code
    
    101
    +Observed> currentWorkerCount Data
    
    102
    +Observed> debugMsgFn Data
    
    103
    +Observed> dequeElements Code
    
    104
    +Observed> dirty_STACK Code
    
    105
    +Observed> dirty_TSO Code
    
    106
    +Observed> discardElements Code
    
    107
    +Observed> era Data
    
    108
    +Observed> errorMsgFn Data
    
    109
    +Observed> eventLogStatus Code
    
    110
    +Observed> eventTypes Data
    
    111
    +Observed> exitFn Data
    
    112
    +Observed> exitHeapOverflow Code
    
    113
    +Observed> exitHpc Code
    
    114
    +Observed> fatalInternalErrorFn Data
    
    115
    +Observed> fillGot Code
    
    116
    +Observed> findSymbol Code
    
    117
    +Observed> findSymbolTable Code
    
    118
    +Observed> flushExec Code
    
    119
    +Observed> formatClosureDescIpe Code
    
    120
    +Observed> freeAllMBlocks Code
    
    121
    +Observed> freeChain Code
    
    122
    +Observed> freeChain_lock Code
    
    123
    +Observed> freeGot Code
    
    124
    +Observed> freeGroup Code
    
    125
    +Observed> freeGroup_lock Code
    
    126
    +Observed> freeInitFiniList Code
    
    127
    +Observed> freeMBlocks Code
    
    128
    +Observed> freeProddableBlocks Code
    
    129
    +Observed> freeThreadingResources Code
    
    130
    +Observed> freeWSDeque Code
    
    131
    +Observed> full_prog_argc Data
    
    132
    +Observed> full_prog_argv Data
    
    133
    +Observed> generations Data
    
    134
    +Observed> getFirstMBlock Code
    
    135
    +Observed> getMBlock Code
    
    136
    +Observed> getMBlockOnNode Code
    
    137
    +Observed> getMBlocks Code
    
    138
    +Observed> getMBlocksOnNode Code
    
    139
    +Observed> getNextMBlock Code
    
    140
    +Observed> getObjectLoadStatus Code
    
    141
    +Observed> get_con_itbl Code
    
    142
    +Observed> get_fun_itbl Code
    
    143
    +Observed> get_itbl Code
    
    144
    +Observed> get_itbl_acquire Code
    
    145
    +Observed> get_ret_itbl Code
    
    146
    +Observed> get_thunk_itbl Code
    
    147
    +Observed> heap_view_closurePtrs Code
    
    148
    +Observed> heap_view_closureSize Code
    
    149
    +Observed> heap_view_closure_ptrs_in_pap_payload Code
    
    150
    +Observed> highMemDynamic Data
    
    151
    +Observed> hs_main Code
    
    152
    +Observed> initAdjustors Code
    
    153
    +Observed> initBlockAllocator Code
    
    154
    +Observed> initCondition Code
    
    155
    +Observed> initGenerationStats Code
    
    156
    +Observed> initMBlocks Code
    
    157
    +Observed> initMutex Code
    
    158
    +Observed> initProddableBlockSet Code
    
    159
    +Observed> interp_shutdown Code
    
    160
    +Observed> interp_startup Code
    
    161
    +Observed> interruptOSThread Code
    
    162
    +Observed> isSymbolImport Code
    
    163
    +Observed> isSymbolWeak Code
    
    164
    +Observed> itbl_to_con_itbl Code
    
    165
    +Observed> itbl_to_fun_itbl Code
    
    166
    +Observed> itbl_to_ret_itbl Code
    
    167
    +Observed> itbl_to_thunk_itbl Code
    
    168
    +Observed> joinOSThread Code
    
    169
    +Observed> kernelThreadId Code
    
    170
    +Observed> listAllBlocks Code
    
    171
    +Observed> listThreads Code
    
    172
    +Observed> looksEmptyWSDeque Code
    
    173
    +Observed> lookupIPEId Code
    
    174
    +Observed> m32_free_page_pool Data
    
    175
    +Observed> m32_free_page_pool_size Data
    
    176
    +Observed> makeGot Code
    
    177
    +Observed> mblock_address_space Data
    
    178
    +Observed> mblocks_allocated Data
    
    179
    +Observed> modules Data
    
    180
    +Observed> mpc_misses Data
    
    181
    +Observed> mutArrPtrsCard Code
    
    182
    +Observed> mutArrPtrsCardTableSize Code
    
    183
    +Observed> mutArrPtrsCards Code
    
    184
    +Observed> mut_arr_ptrs_sizeW Code
    
    185
    +Observed> n_alloc_blocks_by_node Data
    
    186
    +Observed> needGotSlot Code
    
    187
    +Observed> newCAF Code
    
    188
    +Observed> newGCdCAF Code
    
    189
    +Observed> newRetainedCAF Code
    
    190
    +Observed> newWSDeque Code
    
    191
    +Observed> next_nursery Data
    
    192
    +Observed> no_break_on_exception Data
    
    193
    +Observed> nonmovingAllocatorCensus Code
    
    194
    +Observed> nonmovingAllocatorCensusWithWords Code
    
    195
    +Observed> nonmovingPrintAllocatorCensus Code
    
    196
    +Observed> nonmovingSweep Code
    
    197
    +Observed> nonmovingSweepCompactObjects Code
    
    198
    +Observed> nonmovingSweepLargeObjects Code
    
    199
    +Observed> nonmovingSweepMutLists Code
    
    200
    +Observed> nonmovingSweepStableNameTable Code
    
    201
    +Observed> nonmovingTraceAllocatorCensus Code
    
    202
    +Observed> oldest_gen Data
    
    203
    +Observed> osThreadId Code
    
    204
    +Observed> osThreadIsAlive Code
    
    205
    +Observed> pap_sizeW Code
    
    206
    +Observed> pauseTokenCapability Code
    
    207
    +Observed> pbarf Code
    
    208
    +Observed> peak_mblocks_allocated Data
    
    209
    +Observed> poolFlush Code
    
    210
    +Observed> poolFree Code
    
    211
    +Observed> poolGetDesiredSize Code
    
    212
    +Observed> poolGetMaxSize Code
    
    213
    +Observed> poolInit Code
    
    214
    +Observed> poolRelease Code
    
    215
    +Observed> poolSetDesiredSize Code
    
    216
    +Observed> poolSetMaxSize Code
    
    217
    +Observed> poolTake Code
    
    218
    +Observed> poolTryTake Code
    
    219
    +Observed> popWSDeque Code
    
    220
    +Observed> printLoadedObjects Code
    
    221
    +Observed> prog_name Data
    
    222
    +Observed> pushWSDeque Code
    
    223
    +Observed> re_invalid Data
    
    224
    +Observed> re_realso Data
    
    225
    +Observed> releaseFreeMemory Code
    
    226
    +Observed> releaseThreadNode Code
    
    227
    +Observed> reportMemoryMap Code
    
    228
    +Observed> rtsDebugMsgFn Code
    
    229
    +Observed> rtsErrorMsgFn Code
    
    230
    +Observed> rtsFatalInternalErrorFn Code
    
    231
    +Observed> rtsSysErrorMsgFn Code
    
    232
    +Observed> rts_argc Data
    
    233
    +Observed> rts_argv Data
    
    234
    +Observed> rts_argv_size Data
    
    235
    +Observed> rts_done Code
    
    236
    +Observed> rts_evalLazyIO_ Code
    
    237
    +Observed> rts_getSchedStatus Code
    
    238
    +Observed> rts_isPaused Code
    
    239
    +Observed> rts_listMiscRoots Code
    
    240
    +Observed> rts_listThreads Code
    
    241
    +Observed> rts_pause Code
    
    242
    +Observed> rts_pinThreadToNumaNode Code
    
    243
    +Observed> rts_resume Code
    
    244
    +Observed> runFini Code
    
    245
    +Observed> runInit Code
    
    246
    +Observed> sbarf Code
    
    247
    +Observed> scheduleWaitThread Code
    
    248
    +Observed> setHighMemDynamic Code
    
    249
    +Observed> setImportSymbol Code
    
    250
    +Observed> setSymbolInfo Code
    
    251
    +Observed> setTSOLink Code
    
    252
    +Observed> setTSOPrev Code
    
    253
    +Observed> setThreadAffinity Code
    
    254
    +Observed> setThreadNode Code
    
    255
    +Observed> setVectorSupport Code
    
    256
    +Observed> setWeakSymbol Code
    
    257
    +Observed> shndx_table_uninit_label Data
    
    258
    +Observed> shouldCompact Code
    
    259
    +Observed> shutdownThread Code
    
    260
    +Observed> signalCondition Code
    
    261
    +Observed> simple_ccall_adjustor_template Data
    
    262
    +Observed> sizeW_fromITBL Code
    
    263
    +Observed> small_mut_arr_ptrs_sizeW Code
    
    264
    +Observed> ssbarf Code
    
    265
    +Observed> stack_frame_sizeW Code
    
    266
    +Observed> stack_sizeW Code
    
    267
    +Observed> state_change_mutex Data
    
    268
    +Observed> stealWSDeque Code
    
    269
    +Observed> stealWSDeque_ Code
    
    270
    +Observed> stg_AP_NOUPD_info Data
    
    271
    +Observed> stg_AP_STACK_NOUPD_info Data
    
    272
    +Observed> stg_AP_STACK_info Data
    
    273
    +Observed> stg_AP_info Data
    
    274
    +Observed> stg_ASYNCIOOP_info Data
    
    275
    +Observed> stg_ASYNCIO_LIVE0_closure Data
    
    276
    +Observed> stg_ASYNCIO_LIVE0_info Data
    
    277
    +Observed> stg_BCO_info Data
    
    278
    +Observed> stg_CLOSURE_TABLE_NULL_closure Data
    
    279
    +Observed> stg_CLOSURE_TABLE_NULL_info Data
    
    280
    +Observed> stg_COMPACT_NFDATA_CLEAN_info Data
    
    281
    +Observed> stg_COMPACT_NFDATA_DIRTY_info Data
    
    282
    +Observed> stg_CONTINUATION_apply Code
    
    283
    +Observed> stg_CONTINUATION_info Data
    
    284
    +Observed> stg_C_FINALIZER_LIST_info Data
    
    285
    +Observed> stg_DEAD_SLOT_closure Data
    
    286
    +Observed> stg_DEAD_SLOT_info Data
    
    287
    +Observed> stg_DEAD_WEAK_info Data
    
    288
    +Observed> stg_END_STM_CHUNK_LIST_closure Data
    
    289
    +Observed> stg_END_STM_CHUNK_LIST_info Data
    
    290
    +Observed> stg_END_STM_WATCH_QUEUE_closure Data
    
    291
    +Observed> stg_END_STM_WATCH_QUEUE_info Data
    
    292
    +Observed> stg_END_TSO_QUEUE_closure Data
    
    293
    +Observed> stg_END_TSO_QUEUE_info Data
    
    294
    +Observed> stg_GCD_CAF_info Data
    
    295
    +Observed> stg_IND_info Data
    
    296
    +Observed> stg_MSG_BLACKHOLE_info Data
    
    297
    +Observed> stg_MSG_CLONE_STACK_info Data
    
    298
    +Observed> stg_MSG_NULL_info Data
    
    299
    +Observed> stg_MSG_THROWTO_info Data
    
    300
    +Observed> stg_MSG_TRY_WAKEUP_info Data
    
    301
    +Observed> stg_MSG_UPD_TSO_FLAG_info Data
    
    302
    +Observed> stg_MUT_ARR_PTRS_CLEAN_info Data
    
    303
    +Observed> stg_MVAR_TSO_QUEUE_info Data
    
    304
    +Observed> stg_NO_FINALIZER_closure Data
    
    305
    +Observed> stg_NO_FINALIZER_info Data
    
    306
    +Observed> stg_NO_TREC_closure Data
    
    307
    +Observed> stg_NO_TREC_info Data
    
    308
    +Observed> stg_PAP_apply Code
    
    309
    +Observed> stg_PAP_info Data
    
    310
    +Observed> stg_PROMPT_TAG_info Data
    
    311
    +Observed> stg_SMALL_MUT_ARR_PTRS_CLEAN_info Data
    
    312
    +Observed> stg_STABLE_NAME_info Data
    
    313
    +Observed> stg_STACK_info Data
    
    314
    +Observed> stg_TIMEOUT_QUEUE_EMPTY_closure Data
    
    315
    +Observed> stg_TIMEOUT_QUEUE_EMPTY_info Data
    
    316
    +Observed> stg_TIMEOUT_QUEUE_info Data
    
    317
    +Observed> stg_TREC_CHUNK_info Data
    
    318
    +Observed> stg_TREC_HEADER_info Data
    
    319
    +Observed> stg_TSO_info Data
    
    320
    +Observed> stg_TVAR_WATCH_QUEUE_info Data
    
    321
    +Observed> stg_WHITEHOLE_info Data
    
    322
    +Observed> stg_abort Code
    
    323
    +Observed> stg_ann_frame_info Data
    
    324
    +Observed> stg_ap_0_ret_str Data
    
    325
    +Observed> stg_ap_stack_entries Data
    
    326
    +Observed> stg_ap_stk_ Code
    
    327
    +Observed> stg_ap_stk_d Code
    
    328
    +Observed> stg_ap_stk_f Code
    
    329
    +Observed> stg_ap_stk_l Code
    
    330
    +Observed> stg_ap_stk_n Code
    
    331
    +Observed> stg_ap_stk_nn Code
    
    332
    +Observed> stg_ap_stk_nnn Code
    
    333
    +Observed> stg_ap_stk_nnp Code
    
    334
    +Observed> stg_ap_stk_np Code
    
    335
    +Observed> stg_ap_stk_npn Code
    
    336
    +Observed> stg_ap_stk_npp Code
    
    337
    +Observed> stg_ap_stk_p Code
    
    338
    +Observed> stg_ap_stk_pn Code
    
    339
    +Observed> stg_ap_stk_pnn Code
    
    340
    +Observed> stg_ap_stk_pnp Code
    
    341
    +Observed> stg_ap_stk_pp Code
    
    342
    +Observed> stg_ap_stk_ppn Code
    
    343
    +Observed> stg_ap_stk_ppp Code
    
    344
    +Observed> stg_ap_stk_pppp Code
    
    345
    +Observed> stg_ap_stk_ppppp Code
    
    346
    +Observed> stg_ap_stk_pppppp Code
    
    347
    +Observed> stg_ap_stk_ppppppp Code
    
    348
    +Observed> stg_ap_stk_pppppppp Code
    
    349
    +Observed> stg_ap_stk_v16 Code
    
    350
    +Observed> stg_ap_stk_v32 Code
    
    351
    +Observed> stg_ap_stk_v64 Code
    
    352
    +Observed> stg_apply_interp_info Data
    
    353
    +Observed> stg_atomically_frame_info Data
    
    354
    +Observed> stg_atomically_info Data
    
    355
    +Observed> stg_atomically_waiting_frame_info Data
    
    356
    +Observed> stg_block_blackhole Code
    
    357
    +Observed> stg_block_io_int Code
    
    358
    +Observed> stg_block_io_int_info Data
    
    359
    +Observed> stg_block_io_unit Code
    
    360
    +Observed> stg_block_io_unit_info Data
    
    361
    +Observed> stg_block_putmvar_finally Code
    
    362
    +Observed> stg_block_putmvar_info Data
    
    363
    +Observed> stg_block_readmvar_finally Code
    
    364
    +Observed> stg_block_readmvar_info Data
    
    365
    +Observed> stg_block_stmwait Code
    
    366
    +Observed> stg_block_takemvar_finally Code
    
    367
    +Observed> stg_block_takemvar_info Data
    
    368
    +Observed> stg_block_throwto Code
    
    369
    +Observed> stg_block_throwto_finally Code
    
    370
    +Observed> stg_block_throwto_info Data
    
    371
    +Observed> stg_catch_frame_info Data
    
    372
    +Observed> stg_catch_retry_frame_info Data
    
    373
    +Observed> stg_catch_stm_frame_info Data
    
    374
    +Observed> stg_compactAddWorkerzh Code
    
    375
    +Observed> stg_control0zh_ll Code
    
    376
    +Observed> stg_ctoi_D1_info Data
    
    377
    +Observed> stg_ctoi_F1_info Data
    
    378
    +Observed> stg_ctoi_L1_info Data
    
    379
    +Observed> stg_ctoi_R1n_info Data
    
    380
    +Observed> stg_ctoi_R1p_info Data
    
    381
    +Observed> stg_ctoi_V_info Data
    
    382
    +Observed> stg_dead_thread_info Data
    
    383
    +Observed> stg_do_unpack_cstring Code
    
    384
    +Observed> stg_do_unpack_cstring_utf8 Code
    
    385
    +Observed> stg_dummy_ret_closure Data
    
    386
    +Observed> stg_dummy_ret_info Data
    
    387
    +Observed> stg_forceIO_info Data
    
    388
    +Observed> stg_gc_prim Code
    
    389
    +Observed> stg_gc_prim_p_ll Code
    
    390
    +Observed> stg_gc_prim_p_ll_info Data
    
    391
    +Observed> stg_gc_prim_pp_ll Code
    
    392
    +Observed> stg_gc_prim_pp_ll_info Data
    
    393
    +Observed> stg_handleIOSubmitResult Code
    
    394
    +Observed> stg_keepAlive_frame_info Data
    
    395
    +Observed> stg_killMyself Code
    
    396
    +Observed> stg_marked_upd_frame_info Data
    
    397
    +Observed> stg_maskAsyncExceptionszh_ret_info Data
    
    398
    +Observed> stg_maskUninterruptiblezh_ret_info Data
    
    399
    +Observed> stg_noDuplicate_info Data
    
    400
    +Observed> stg_overwritingClosure Code
    
    401
    +Observed> stg_overwritingClosureSize Code
    
    402
    +Observed> stg_prompt_frame_info Data
    
    403
    +Observed> stg_raise_info Data
    
    404
    +Observed> stg_raise_ret_info Data
    
    405
    +Observed> stg_restore_cccs_d_info Data
    
    406
    +Observed> stg_restore_cccs_eval_info Data
    
    407
    +Observed> stg_restore_cccs_v16_info Data
    
    408
    +Observed> stg_restore_cccs_v32_info Data
    
    409
    +Observed> stg_restore_cccs_v64_info Data
    
    410
    +Observed> stg_returnToSched Code
    
    411
    +Observed> stg_returnToSchedButFirst Code
    
    412
    +Observed> stg_returnToSchedNotPaused Code
    
    413
    +Observed> stg_returnToStackTop Code
    
    414
    +Observed> stg_stack_save_entries Data
    
    415
    +Observed> stg_stack_underflow_frame_d_info Data
    
    416
    +Observed> stg_stack_underflow_frame_v16_info Data
    
    417
    +Observed> stg_stack_underflow_frame_v32_info Data
    
    418
    +Observed> stg_stack_underflow_frame_v64_info Data
    
    419
    +Observed> stg_stk_save_ Code
    
    420
    +Observed> stg_stk_save_d Code
    
    421
    +Observed> stg_stk_save_f Code
    
    422
    +Observed> stg_stk_save_l Code
    
    423
    +Observed> stg_stk_save_n Code
    
    424
    +Observed> stg_stk_save_nn Code
    
    425
    +Observed> stg_stk_save_nnn Code
    
    426
    +Observed> stg_stk_save_nnp Code
    
    427
    +Observed> stg_stk_save_np Code
    
    428
    +Observed> stg_stk_save_npn Code
    
    429
    +Observed> stg_stk_save_npp Code
    
    430
    +Observed> stg_stk_save_p Code
    
    431
    +Observed> stg_stk_save_pn Code
    
    432
    +Observed> stg_stk_save_pnn Code
    
    433
    +Observed> stg_stk_save_pnp Code
    
    434
    +Observed> stg_stk_save_pp Code
    
    435
    +Observed> stg_stk_save_ppn Code
    
    436
    +Observed> stg_stk_save_ppp Code
    
    437
    +Observed> stg_stk_save_pppp Code
    
    438
    +Observed> stg_stk_save_ppppp Code
    
    439
    +Observed> stg_stk_save_pppppp Code
    
    440
    +Observed> stg_stk_save_ppppppp Code
    
    441
    +Observed> stg_stk_save_pppppppp Code
    
    442
    +Observed> stg_stk_save_v16 Code
    
    443
    +Observed> stg_stk_save_v32 Code
    
    444
    +Observed> stg_stk_save_v64 Code
    
    445
    +Observed> stg_stop_thread_info Data
    
    446
    +Observed> stg_threadFinished Code
    
    447
    +Observed> stg_unmaskAsyncExceptionszh_ret_info Data
    
    448
    +Observed> stg_writeSlopMarker Code
    
    449
    +Observed> sync_phase_marking_budget Data
    
    450
    +Observed> sysErrorMsgFn Data
    
    451
    +Observed> tagConstr Code
    
    452
    +Observed> thunk_sizeW_fromITBL Code
    
    453
    +Observed> timedWaitCondition Code
    
    454
    +Observed> totalArgumentSize Code
    
    455
    +Observed> total_ticks Data
    
    456
    +Observed> unloadNativeObj Code
    
    457
    +Observed> user_era Data
    
    458
    +Observed> validate_trec_optimistic Code
    
    459
    +Observed> vbarf Code
    
    460
    +Observed> vdebugBelch Code
    
    461
    +Observed> vectorSupportGlobalVar Data
    
    462
    +Observed> verifyGot Code
    
    463
    +Observed> verrorBelch Code
    
    464
    +Observed> vsysErrorBelch Code
    
    465
    +Observed> waitCondition Code
    
    466
    +Observed> warnMissingKBLibraryPaths Code
    
    467
    +Observed> yieldThread Code
    
    468
    +
    
    469
    +Symbols observed in the DSO and declared in RtsSymbols.c but with conflicting type:
    
    470
    +WrongType> ALLOC_BH_adm (declared, observed): (Code, Data)
    
    471
    +WrongType> ALLOC_BH_ctr (declared, observed): (Code, Data)
    
    472
    +WrongType> ALLOC_BH_gds (declared, observed): (Code, Data)
    
    473
    +WrongType> ALLOC_BH_slp (declared, observed): (Code, Data)
    
    474
    +WrongType> ALLOC_CON_adm (declared, observed): (Code, Data)
    
    475
    +WrongType> ALLOC_CON_ctr (declared, observed): (Code, Data)
    
    476
    +WrongType> ALLOC_CON_gds (declared, observed): (Code, Data)
    
    477
    +WrongType> ALLOC_CON_slp (declared, observed): (Code, Data)
    
    478
    +WrongType> ALLOC_FUN_adm (declared, observed): (Code, Data)
    
    479
    +WrongType> ALLOC_FUN_ctr (declared, observed): (Code, Data)
    
    480
    +WrongType> ALLOC_FUN_gds (declared, observed): (Code, Data)
    
    481
    +WrongType> ALLOC_FUN_slp (declared, observed): (Code, Data)
    
    482
    +WrongType> ALLOC_HEAP_ctr (declared, observed): (Code, Data)
    
    483
    +WrongType> ALLOC_HEAP_tot (declared, observed): (Code, Data)
    
    484
    +WrongType> ALLOC_PAP_adm (declared, observed): (Code, Data)
    
    485
    +WrongType> ALLOC_PAP_ctr (declared, observed): (Code, Data)
    
    486
    +WrongType> ALLOC_PAP_gds (declared, observed): (Code, Data)
    
    487
    +WrongType> ALLOC_PAP_slp (declared, observed): (Code, Data)
    
    488
    +WrongType> ALLOC_PRIM_adm (declared, observed): (Code, Data)
    
    489
    +WrongType> ALLOC_PRIM_ctr (declared, observed): (Code, Data)
    
    490
    +WrongType> ALLOC_PRIM_gds (declared, observed): (Code, Data)
    
    491
    +WrongType> ALLOC_PRIM_slp (declared, observed): (Code, Data)
    
    492
    +WrongType> ALLOC_RTS_ctr (declared, observed): (Code, Data)
    
    493
    +WrongType> ALLOC_RTS_tot (declared, observed): (Code, Data)
    
    494
    +WrongType> ALLOC_SE_THK_ctr (declared, observed): (Code, Data)
    
    495
    +WrongType> ALLOC_STACK_ctr (declared, observed): (Code, Data)
    
    496
    +WrongType> ALLOC_STACK_tot (declared, observed): (Code, Data)
    
    497
    +WrongType> ALLOC_THK_adm (declared, observed): (Code, Data)
    
    498
    +WrongType> ALLOC_THK_gds (declared, observed): (Code, Data)
    
    499
    +WrongType> ALLOC_THK_slp (declared, observed): (Code, Data)
    
    500
    +WrongType> ALLOC_TSO_ctr (declared, observed): (Code, Data)
    
    501
    +WrongType> ALLOC_TSO_tot (declared, observed): (Code, Data)
    
    502
    +WrongType> ALLOC_TUP_adm (declared, observed): (Code, Data)
    
    503
    +WrongType> ALLOC_TUP_ctr (declared, observed): (Code, Data)
    
    504
    +WrongType> ALLOC_TUP_gds (declared, observed): (Code, Data)
    
    505
    +WrongType> ALLOC_TUP_slp (declared, observed): (Code, Data)
    
    506
    +WrongType> ALLOC_UP_THK_ctr (declared, observed): (Code, Data)
    
    507
    +WrongType> CATCHF_PUSHED_ctr (declared, observed): (Code, Data)
    
    508
    +WrongType> ENT_AP_STACK_ctr (declared, observed): (Code, Data)
    
    509
    +WrongType> ENT_AP_ctr (declared, observed): (Code, Data)
    
    510
    +WrongType> ENT_BH_ctr (declared, observed): (Code, Data)
    
    511
    +WrongType> ENT_CONTINUATION_ctr (declared, observed): (Code, Data)
    
    512
    +WrongType> ENT_DYN_CON_ctr (declared, observed): (Code, Data)
    
    513
    +WrongType> ENT_DYN_FUN_DIRECT_ctr (declared, observed): (Code, Data)
    
    514
    +WrongType> ENT_DYN_IND_ctr (declared, observed): (Code, Data)
    
    515
    +WrongType> ENT_DYN_THK_MANY_ctr (declared, observed): (Code, Data)
    
    516
    +WrongType> ENT_DYN_THK_SINGLE_ctr (declared, observed): (Code, Data)
    
    517
    +WrongType> ENT_LNE_ctr (declared, observed): (Code, Data)
    
    518
    +WrongType> ENT_PAP_ctr (declared, observed): (Code, Data)
    
    519
    +WrongType> ENT_PERM_IND_ctr (declared, observed): (Code, Data)
    
    520
    +WrongType> ENT_STATIC_CON_ctr (declared, observed): (Code, Data)
    
    521
    +WrongType> ENT_STATIC_FUN_DIRECT_ctr (declared, observed): (Code, Data)
    
    522
    +WrongType> ENT_STATIC_IND_ctr (declared, observed): (Code, Data)
    
    523
    +WrongType> ENT_STATIC_THK_MANY_ctr (declared, observed): (Code, Data)
    
    524
    +WrongType> ENT_STATIC_THK_SINGLE_ctr (declared, observed): (Code, Data)
    
    525
    +WrongType> ENT_VIA_NODE_ctr (declared, observed): (Code, Data)
    
    526
    +WrongType> GC_FAILED_PROMOTION_ctr (declared, observed): (Code, Data)
    
    527
    +WrongType> GC_SEL_ABANDONED_ctr (declared, observed): (Code, Data)
    
    528
    +WrongType> GC_SEL_MAJOR_ctr (declared, observed): (Code, Data)
    
    529
    +WrongType> GC_SEL_MINOR_ctr (declared, observed): (Code, Data)
    
    530
    +WrongType> HEAP_CHK_ctr (declared, observed): (Code, Data)
    
    531
    +WrongType> KNOWN_CALL_EXTRA_ARGS_ctr (declared, observed): (Code, Data)
    
    532
    +WrongType> KNOWN_CALL_TOO_FEW_ARGS_ctr (declared, observed): (Code, Data)
    
    533
    +WrongType> KNOWN_CALL_ctr (declared, observed): (Code, Data)
    
    534
    +WrongType> MULTI_CHUNK_SLOW_CALL_CHUNKS_ctr (declared, observed): (Code, Data)
    
    535
    +WrongType> MULTI_CHUNK_SLOW_CALL_ctr (declared, observed): (Code, Data)
    
    536
    +WrongType> MainCapability (declared, observed): (Code, Data)
    
    537
    +WrongType> RET_NEW_ctr (declared, observed): (Code, Data)
    
    538
    +WrongType> RET_NEW_hst (declared, observed): (Code, Data)
    
    539
    +WrongType> RET_OLD_ctr (declared, observed): (Code, Data)
    
    540
    +WrongType> RET_OLD_hst (declared, observed): (Code, Data)
    
    541
    +WrongType> RET_SEMI_loads_avoided (declared, observed): (Code, Data)
    
    542
    +WrongType> RET_UNBOXED_TUP_ctr (declared, observed): (Code, Data)
    
    543
    +WrongType> RET_UNBOXED_TUP_hst (declared, observed): (Code, Data)
    
    544
    +WrongType> SLOW_CALL_FUN_CORRECT_ctr (declared, observed): (Code, Data)
    
    545
    +WrongType> SLOW_CALL_FUN_TOO_FEW_ctr (declared, observed): (Code, Data)
    
    546
    +WrongType> SLOW_CALL_FUN_TOO_MANY_ctr (declared, observed): (Code, Data)
    
    547
    +WrongType> SLOW_CALL_PAP_CORRECT_ctr (declared, observed): (Code, Data)
    
    548
    +WrongType> SLOW_CALL_PAP_TOO_FEW_ctr (declared, observed): (Code, Data)
    
    549
    +WrongType> SLOW_CALL_PAP_TOO_MANY_ctr (declared, observed): (Code, Data)
    
    550
    +WrongType> SLOW_CALL_UNEVALD_ctr (declared, observed): (Code, Data)
    
    551
    +WrongType> SLOW_CALL_ctr (declared, observed): (Code, Data)
    
    552
    +WrongType> SLOW_CALL_fast_d_ctr (declared, observed): (Code, Data)
    
    553
    +WrongType> SLOW_CALL_fast_f_ctr (declared, observed): (Code, Data)
    
    554
    +WrongType> SLOW_CALL_fast_l_ctr (declared, observed): (Code, Data)
    
    555
    +WrongType> SLOW_CALL_fast_n_ctr (declared, observed): (Code, Data)
    
    556
    +WrongType> SLOW_CALL_fast_p_ctr (declared, observed): (Code, Data)
    
    557
    +WrongType> SLOW_CALL_fast_pp_ctr (declared, observed): (Code, Data)
    
    558
    +WrongType> SLOW_CALL_fast_ppp_ctr (declared, observed): (Code, Data)
    
    559
    +WrongType> SLOW_CALL_fast_pppp_ctr (declared, observed): (Code, Data)
    
    560
    +WrongType> SLOW_CALL_fast_ppppp_ctr (declared, observed): (Code, Data)
    
    561
    +WrongType> SLOW_CALL_fast_pppppp_ctr (declared, observed): (Code, Data)
    
    562
    +WrongType> SLOW_CALL_fast_pppv_ctr (declared, observed): (Code, Data)
    
    563
    +WrongType> SLOW_CALL_fast_ppv_ctr (declared, observed): (Code, Data)
    
    564
    +WrongType> SLOW_CALL_fast_pv_ctr (declared, observed): (Code, Data)
    
    565
    +WrongType> SLOW_CALL_fast_v16_ctr (declared, observed): (Code, Data)
    
    566
    +WrongType> SLOW_CALL_fast_v_ctr (declared, observed): (Code, Data)
    
    567
    +WrongType> STK_CHK_ctr (declared, observed): (Code, Data)
    
    568
    +WrongType> TAG_TAGGED_miss (declared, observed): (Code, Data)
    
    569
    +WrongType> TAG_TAGGED_pred (declared, observed): (Code, Data)
    
    570
    +WrongType> TAG_UNTAGGED_miss (declared, observed): (Code, Data)
    
    571
    +WrongType> TAG_UNTAGGED_pred (declared, observed): (Code, Data)
    
    572
    +WrongType> UNKNOWN_CALL_ctr (declared, observed): (Code, Data)
    
    573
    +WrongType> UPDF_OMITTED_ctr (declared, observed): (Code, Data)
    
    574
    +WrongType> UPDF_PUSHED_ctr (declared, observed): (Code, Data)
    
    575
    +WrongType> UPDF_RCC_OMITTED_ctr (declared, observed): (Code, Data)
    
    576
    +WrongType> UPDF_RCC_PUSHED_ctr (declared, observed): (Code, Data)
    
    577
    +WrongType> UPD_CAF_BH_SINGLE_ENTRY_ctr (declared, observed): (Code, Data)
    
    578
    +WrongType> UPD_CAF_BH_UPDATABLE_ctr (declared, observed): (Code, Data)
    
    579
    +WrongType> UPD_CON_IN_NEW_ctr (declared, observed): (Code, Data)
    
    580
    +WrongType> UPD_CON_IN_PLACE_ctr (declared, observed): (Code, Data)
    
    581
    +WrongType> UPD_NEW_IND_ctr (declared, observed): (Code, Data)
    
    582
    +WrongType> UPD_NEW_PERM_IND_ctr (declared, observed): (Code, Data)
    
    583
    +WrongType> UPD_OLD_IND_ctr (declared, observed): (Code, Data)
    
    584
    +WrongType> UPD_OLD_PERM_IND_ctr (declared, observed): (Code, Data)
    
    585
    +WrongType> UPD_PAP_IN_NEW_ctr (declared, observed): (Code, Data)
    
    586
    +WrongType> UPD_PAP_IN_PLACE_ctr (declared, observed): (Code, Data)
    
    587
    +WrongType> UPD_SQUEEZED_ctr (declared, observed): (Code, Data)
    
    588
    +WrongType> VERY_SLOW_CALL_ctr (declared, observed): (Code, Data)
    
    589
    +WrongType> __stg_gc_enter_1 (declared, observed): (Data, Code)
    
    590
    +WrongType> __stg_gc_fun (declared, observed): (Data, Code)
    
    591
    +WrongType> closure_flags (declared, observed): (Code, Data)
    
    592
    +WrongType> defaultRtsConfig (declared, observed): (Code, Data)
    
    593
    +WrongType> g0 (declared, observed): (Code, Data)
    
    594
    +WrongType> ghc_unique_counter64 (declared, observed): (Code, Data)
    
    595
    +WrongType> ghc_unique_inc (declared, observed): (Code, Data)
    
    596
    +WrongType> keepCAFs (declared, observed): (Code, Data)
    
    597
    +WrongType> large_alloc_lim (declared, observed): (Code, Data)
    
    598
    +WrongType> prog_argc (declared, observed): (Code, Data)
    
    599
    +WrongType> prog_argv (declared, observed): (Code, Data)
    
    600
    +WrongType> stable_name_table (declared, observed): (Code, Data)
    
    601
    +WrongType> stable_ptr_table (declared, observed): (Code, Data)
    
    602
    +WrongType> stg_CHARLIKE_closure (declared, observed): (Code, Data)
    
    603
    +WrongType> stg_INTLIKE_closure (declared, observed): (Code, Data)
    
    604
    +WrongType> stg_absentErrorzh (declared, observed): (Data, Code)
    
    605
    +WrongType> stg_annotateStackzh (declared, observed): (Data, Code)
    
    606
    +WrongType> stg_ap_0_fast (declared, observed): (Data, Code)
    
    607
    +WrongType> stg_ap_d_fast (declared, observed): (Data, Code)
    
    608
    +WrongType> stg_ap_f_fast (declared, observed): (Data, Code)
    
    609
    +WrongType> stg_ap_l_fast (declared, observed): (Data, Code)
    
    610
    +WrongType> stg_ap_n_fast (declared, observed): (Data, Code)
    
    611
    +WrongType> stg_ap_p_fast (declared, observed): (Data, Code)
    
    612
    +WrongType> stg_ap_pp_fast (declared, observed): (Data, Code)
    
    613
    +WrongType> stg_ap_ppp_fast (declared, observed): (Data, Code)
    
    614
    +WrongType> stg_ap_pppp_fast (declared, observed): (Data, Code)
    
    615
    +WrongType> stg_ap_ppppp_fast (declared, observed): (Data, Code)
    
    616
    +WrongType> stg_ap_pppppp_fast (declared, observed): (Data, Code)
    
    617
    +WrongType> stg_ap_pppv_fast (declared, observed): (Data, Code)
    
    618
    +WrongType> stg_ap_ppv_fast (declared, observed): (Data, Code)
    
    619
    +WrongType> stg_ap_pv_fast (declared, observed): (Data, Code)
    
    620
    +WrongType> stg_ap_v16_fast (declared, observed): (Data, Code)
    
    621
    +WrongType> stg_ap_v32_fast (declared, observed): (Data, Code)
    
    622
    +WrongType> stg_ap_v64_fast (declared, observed): (Data, Code)
    
    623
    +WrongType> stg_ap_v_fast (declared, observed): (Data, Code)
    
    624
    +WrongType> stg_atomicModifyMutVar2zh (declared, observed): (Data, Code)
    
    625
    +WrongType> stg_atomicModifyMutVarzuzh (declared, observed): (Data, Code)
    
    626
    +WrongType> stg_atomicallyzh (declared, observed): (Data, Code)
    
    627
    +WrongType> stg_block_noregs (declared, observed): (Data, Code)
    
    628
    +WrongType> stg_block_putmvar (declared, observed): (Data, Code)
    
    629
    +WrongType> stg_block_readmvar (declared, observed): (Data, Code)
    
    630
    +WrongType> stg_block_takemvar (declared, observed): (Data, Code)
    
    631
    +WrongType> stg_casArrayzh (declared, observed): (Data, Code)
    
    632
    +WrongType> stg_casInt16Arrayzh (declared, observed): (Data, Code)
    
    633
    +WrongType> stg_casInt32Arrayzh (declared, observed): (Data, Code)
    
    634
    +WrongType> stg_casInt64Arrayzh (declared, observed): (Data, Code)
    
    635
    +WrongType> stg_casInt8Arrayzh (declared, observed): (Data, Code)
    
    636
    +WrongType> stg_casIntArrayzh (declared, observed): (Data, Code)
    
    637
    +WrongType> stg_casMutVarzh (declared, observed): (Data, Code)
    
    638
    +WrongType> stg_casSmallArrayzh (declared, observed): (Data, Code)
    
    639
    +WrongType> stg_castDoubleToWord64zh (declared, observed): (Data, Code)
    
    640
    +WrongType> stg_castFloatToWord32zh (declared, observed): (Data, Code)
    
    641
    +WrongType> stg_castWord32ToFloatzh (declared, observed): (Data, Code)
    
    642
    +WrongType> stg_castWord64ToDoublezh (declared, observed): (Data, Code)
    
    643
    +WrongType> stg_catchRetryzh (declared, observed): (Data, Code)
    
    644
    +WrongType> stg_catchSTMzh (declared, observed): (Data, Code)
    
    645
    +WrongType> stg_catchzh (declared, observed): (Data, Code)
    
    646
    +WrongType> stg_clearCCSzh (declared, observed): (Data, Code)
    
    647
    +WrongType> stg_cloneArrayzh (declared, observed): (Data, Code)
    
    648
    +WrongType> stg_cloneMutableArrayzh (declared, observed): (Data, Code)
    
    649
    +WrongType> stg_cloneSmallArrayzh (declared, observed): (Data, Code)
    
    650
    +WrongType> stg_cloneSmallMutableArrayzh (declared, observed): (Data, Code)
    
    651
    +WrongType> stg_closureSizzezh (declared, observed): (Data, Code)
    
    652
    +WrongType> stg_compactAddWithSharingzh (declared, observed): (Data, Code)
    
    653
    +WrongType> stg_compactAddzh (declared, observed): (Data, Code)
    
    654
    +WrongType> stg_compactAllocateBlockzh (declared, observed): (Data, Code)
    
    655
    +WrongType> stg_compactContainsAnyzh (declared, observed): (Data, Code)
    
    656
    +WrongType> stg_compactContainszh (declared, observed): (Data, Code)
    
    657
    +WrongType> stg_compactFixupPointerszh (declared, observed): (Data, Code)
    
    658
    +WrongType> stg_compactGetFirstBlockzh (declared, observed): (Data, Code)
    
    659
    +WrongType> stg_compactGetNextBlockzh (declared, observed): (Data, Code)
    
    660
    +WrongType> stg_compactNewzh (declared, observed): (Data, Code)
    
    661
    +WrongType> stg_compactResizzezh (declared, observed): (Data, Code)
    
    662
    +WrongType> stg_compactSizzezh (declared, observed): (Data, Code)
    
    663
    +WrongType> stg_copyArray_barrier (declared, observed): (Data, Code)
    
    664
    +WrongType> stg_copyArrayzh (declared, observed): (Data, Code)
    
    665
    +WrongType> stg_copyMutableArrayzh (declared, observed): (Data, Code)
    
    666
    +WrongType> stg_copySmallArrayzh (declared, observed): (Data, Code)
    
    667
    +WrongType> stg_copySmallMutableArrayzh (declared, observed): (Data, Code)
    
    668
    +WrongType> stg_deRefStablePtrzh (declared, observed): (Data, Code)
    
    669
    +WrongType> stg_deRefWeakzh (declared, observed): (Data, Code)
    
    670
    +WrongType> stg_decodeDoublezu2Intzh (declared, observed): (Data, Code)
    
    671
    +WrongType> stg_decodeDoublezuInt64zh (declared, observed): (Data, Code)
    
    672
    +WrongType> stg_decodeFloatzuIntzh (declared, observed): (Data, Code)
    
    673
    +WrongType> stg_delayzh (declared, observed): (Data, Code)
    
    674
    +WrongType> stg_exit (declared, observed): (Data, Code)
    
    675
    +WrongType> stg_freezzeArrayzh (declared, observed): (Data, Code)
    
    676
    +WrongType> stg_freezzeSmallArrayzh (declared, observed): (Data, Code)
    
    677
    +WrongType> stg_gc_bpp (declared, observed): (Data, Code)
    
    678
    +WrongType> stg_gc_d1 (declared, observed): (Data, Code)
    
    679
    +WrongType> stg_gc_f1 (declared, observed): (Data, Code)
    
    680
    +WrongType> stg_gc_ii (declared, observed): (Data, Code)
    
    681
    +WrongType> stg_gc_ip (declared, observed): (Data, Code)
    
    682
    +WrongType> stg_gc_l1 (declared, observed): (Data, Code)
    
    683
    +WrongType> stg_gc_noregs (declared, observed): (Data, Code)
    
    684
    +WrongType> stg_gc_pi (declared, observed): (Data, Code)
    
    685
    +WrongType> stg_gc_pp (declared, observed): (Data, Code)
    
    686
    +WrongType> stg_gc_ppp (declared, observed): (Data, Code)
    
    687
    +WrongType> stg_gc_pppp (declared, observed): (Data, Code)
    
    688
    +WrongType> stg_gc_ppppp (declared, observed): (Data, Code)
    
    689
    +WrongType> stg_gc_prim_n (declared, observed): (Data, Code)
    
    690
    +WrongType> stg_gc_prim_p (declared, observed): (Data, Code)
    
    691
    +WrongType> stg_gc_prim_pp (declared, observed): (Data, Code)
    
    692
    +WrongType> stg_gc_unbx_r1 (declared, observed): (Data, Code)
    
    693
    +WrongType> stg_gc_unpt_r1 (declared, observed): (Data, Code)
    
    694
    +WrongType> stg_getApStackValzh (declared, observed): (Data, Code)
    
    695
    +WrongType> stg_getMaskingStatezh (declared, observed): (Data, Code)
    
    696
    +WrongType> stg_getOtherThreadAllocationCounterzh (declared, observed): (Data, Code)
    
    697
    +WrongType> stg_getSparkzh (declared, observed): (Data, Code)
    
    698
    +WrongType> stg_getThreadAllocationCounterzh (declared, observed): (Data, Code)
    
    699
    +WrongType> stg_isByteArrayPinnedzh (declared, observed): (Data, Code)
    
    700
    +WrongType> stg_isByteArrayWeaklyPinnedzh (declared, observed): (Data, Code)
    
    701
    +WrongType> stg_isCurrentThreadBoundzh (declared, observed): (Data, Code)
    
    702
    +WrongType> stg_isEmptyMVarzh (declared, observed): (Data, Code)
    
    703
    +WrongType> stg_isMutableByteArrayPinnedzh (declared, observed): (Data, Code)
    
    704
    +WrongType> stg_isMutableByteArrayWeaklyPinnedzh (declared, observed): (Data, Code)
    
    705
    +WrongType> stg_keepAlivezh (declared, observed): (Data, Code)
    
    706
    +WrongType> stg_killThreadzh (declared, observed): (Data, Code)
    
    707
    +WrongType> stg_labelThreadzh (declared, observed): (Data, Code)
    
    708
    +WrongType> stg_listThreadszh (declared, observed): (Data, Code)
    
    709
    +WrongType> stg_makeStablePtrzh (declared, observed): (Data, Code)
    
    710
    +WrongType> stg_maskAsyncExceptionszh (declared, observed): (Data, Code)
    
    711
    +WrongType> stg_maskUninterruptiblezh (declared, observed): (Data, Code)
    
    712
    +WrongType> stg_mkApUpd0zh (declared, observed): (Data, Code)
    
    713
    +WrongType> stg_newAlignedPinnedByteArrayzh (declared, observed): (Data, Code)
    
    714
    +WrongType> stg_newArrayzh (declared, observed): (Data, Code)
    
    715
    +WrongType> stg_newBCOzh (declared, observed): (Data, Code)
    
    716
    +WrongType> stg_newByteArrayzh (declared, observed): (Data, Code)
    
    717
    +WrongType> stg_newConAppObjzh (declared, observed): (Data, Code)
    
    718
    +WrongType> stg_newMVarzh (declared, observed): (Data, Code)
    
    719
    +WrongType> stg_newMutVarzh (declared, observed): (Data, Code)
    
    720
    +WrongType> stg_newPinnedByteArrayzh (declared, observed): (Data, Code)
    
    721
    +WrongType> stg_newSmallArrayzh (declared, observed): (Data, Code)
    
    722
    +WrongType> stg_newTVarzh (declared, observed): (Data, Code)
    
    723
    +WrongType> stg_noDuplicatezh (declared, observed): (Data, Code)
    
    724
    +WrongType> stg_numSparkszh (declared, observed): (Data, Code)
    
    725
    +WrongType> stg_paniczh (declared, observed): (Data, Code)
    
    726
    +WrongType> stg_putMVarzh (declared, observed): (Data, Code)
    
    727
    +WrongType> stg_raiseDivZZerozh (declared, observed): (Data, Code)
    
    728
    +WrongType> stg_raiseIOzh (declared, observed): (Data, Code)
    
    729
    +WrongType> stg_raiseOverflowzh (declared, observed): (Data, Code)
    
    730
    +WrongType> stg_raiseUnderflowzh (declared, observed): (Data, Code)
    
    731
    +WrongType> stg_raisezh (declared, observed): (Data, Code)
    
    732
    +WrongType> stg_readMVarzh (declared, observed): (Data, Code)
    
    733
    +WrongType> stg_readTVarIOzh (declared, observed): (Data, Code)
    
    734
    +WrongType> stg_readTVarzh (declared, observed): (Data, Code)
    
    735
    +WrongType> stg_resizzeMutableByteArrayzh (declared, observed): (Data, Code)
    
    736
    +WrongType> stg_retryzh (declared, observed): (Data, Code)
    
    737
    +WrongType> stg_setOtherThreadAllocationCounterzh (declared, observed): (Data, Code)
    
    738
    +WrongType> stg_setThreadAllocationCounterzh (declared, observed): (Data, Code)
    
    739
    +WrongType> stg_shrinkMutableByteArrayzh (declared, observed): (Data, Code)
    
    740
    +WrongType> stg_shrinkSmallMutableArrayzh (declared, observed): (Data, Code)
    
    741
    +WrongType> stg_takeMVarzh (declared, observed): (Data, Code)
    
    742
    +WrongType> stg_thawArrayzh (declared, observed): (Data, Code)
    
    743
    +WrongType> stg_thawSmallArrayzh (declared, observed): (Data, Code)
    
    744
    +WrongType> stg_threadLabelzh (declared, observed): (Data, Code)
    
    745
    +WrongType> stg_threadStatuszh (declared, observed): (Data, Code)
    
    746
    +WrongType> stg_traceBinaryEventzh (declared, observed): (Data, Code)
    
    747
    +WrongType> stg_traceEventzh (declared, observed): (Data, Code)
    
    748
    +WrongType> stg_traceMarkerzh (declared, observed): (Data, Code)
    
    749
    +WrongType> stg_tryReadMVarzh (declared, observed): (Data, Code)
    
    750
    +WrongType> stg_tryTakeMVarzh (declared, observed): (Data, Code)
    
    751
    +WrongType> stg_unmaskAsyncExceptionszh (declared, observed): (Data, Code)
    
    752
    +WrongType> stg_unpackClosurezh (declared, observed): (Data, Code)
    
    753
    +WrongType> stg_unsafeThawArrayzh (declared, observed): (Data, Code)
    
    754
    +WrongType> stg_unsafeThawSmallArrayzh (declared, observed): (Data, Code)
    
    755
    +WrongType> stg_waitReadzh (declared, observed): (Data, Code)
    
    756
    +WrongType> stg_waitWritezh (declared, observed): (Data, Code)
    
    757
    +WrongType> stg_whereFromzh (declared, observed): (Data, Code)
    
    758
    +WrongType> stg_writeTVarzh (declared, observed): (Data, Code)
    
    759
    +WrongType> stg_yield_noregs (declared, observed): (Data, Code)
    
    760
    +WrongType> stg_yield_to_interpreter (declared, observed): (Data, Code)
    
    761
    +WrongType> stg_yieldzh (declared, observed): (Data, Code)
    
    762
    +WrongType> ticky_slow_call_unevald (declared, observed): (Code, Data)