[llgo] Force exporting __morestack from llgoi
authorAndrew Wilkins <axwalk@gmail.com>
Fri, 27 Nov 2015 04:46:46 +0000 (04:46 +0000)
committerAndrew Wilkins <axwalk@gmail.com>
Fri, 27 Nov 2015 04:46:46 +0000 (04:46 +0000)
Summary:
Force exporting __morestack from llgoi, so that
the symbol is available to the execution engine
when linking with libLLVM.so. The engine does
not reference __morestack explicitly, so must
be provided by the host program.

Reviewers: pcc

Subscribers: axw, llvm-commits

Differential Revision: http://reviews.llvm.org/D12625

llvm-svn: 254188

llgo/cmd/llgoi/llgoi.go

index e6e021b..401e8f3 100644 (file)
@@ -38,6 +38,12 @@ import (
        "llvm.org/llvm/bindings/go/llvm"
 )
 
+// /* Force exporting __morestack if it's available, so that it is
+//    available to the engine when linking with libLLVM.so. */
+//
+// void *__morestack __attribute__((weak));
+import "C"
+
 func getInstPrefix() (string, error) {
        path, err := exec.LookPath(os.Args[0])
        if err != nil {