Add missing SMP symbols to RT linker.
authorTamar Christina <tamar@zhox.com>
Fri, 18 Nov 2016 08:50:11 +0000 (08:50 +0000)
committerTamar Christina <tamar@zhox.com>
Fri, 18 Nov 2016 08:50:11 +0000 (08:50 +0000)
Summary:
Add some missing symbols that we
export from the public headers but forgot to include
in the runtime linker's symbol table.

This is a bit of a unsatifactory patch, since we have a bit of a
cat and mouse game going. We should find a way to automate this.

But I know of no good solutions at the moment that won't add all
rts symbols (including those we don't have an extern declaration for.).

So for now, just add the ones reported missing.

Test Plan: inplace/bin/ghc-stage2.exe --interactive

Reviewers: RyanGlScott, austin, erikd, simonmar, bgamari

Reviewed By: bgamari

Subscribers: thomie, #ghc_windows_task_force

Differential Revision: https://phabricator.haskell.org/D2727

GHC Trac Issues: #12846

rts/RtsSymbols.c

index 36b2b43..60ffedb 100644 (file)
       SymI_HasProto(hs_spt_remove)                                      \
       SymI_HasProto(hs_spt_keys)                                        \
       SymI_HasProto(hs_spt_key_count)                                   \
+      SymI_HasProto(write_barrier)                                      \
+      SymI_HasProto(store_load_barrier)                                 \
+      SymI_HasProto(load_load_barrier)                                  \
+      SymI_HasProto(cas)                                                \
       RTS_USER_SIGNALS_SYMBOLS                                          \
       RTS_INTCHAR_SYMBOLS