diff options
author | Russ Cox <rsc@golang.org> | 2009-08-24 17:30:00 -0700 |
---|---|---|
committer | Russ Cox <rsc@golang.org> | 2009-08-24 17:30:00 -0700 |
commit | b5581bb7ceb7984d71d4a1fe845deb77cf8a697b (patch) | |
tree | d050621c48935fe92a55747351ede747cb1c210f /usr/rsc/fib/6c.c | |
parent | 83b749573cef6ceeac24202b3bc14d2860828490 (diff) | |
download | golang-b5581bb7ceb7984d71d4a1fe845deb77cf8a697b.tar.gz |
start of FFI support, and a demo.
R=r
DELTA=494 (492 added, 0 deleted, 2 changed)
OCL=33784
CL=33810
Diffstat (limited to 'usr/rsc/fib/6c.c')
-rw-r--r-- | usr/rsc/fib/6c.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/usr/rsc/fib/6c.c b/usr/rsc/fib/6c.c new file mode 100644 index 000000000..23ed84638 --- /dev/null +++ b/usr/rsc/fib/6c.c @@ -0,0 +1,20 @@ +// Copyright 2009 The Go Authors. All rights reserved. +// Use of this source code is governed by a BSD-style +// license that can be found in the LICENSE file. + +#include "runtime.h" +#include "cgocall.h" + +// turn on ffi +#pragma dynld initcgo initcgo "libcgo.so" +#pragma dynld cgo cgo "libcgo.so" + +// pull in fib from fib.so +#pragma dynld extern_c_fib fib "fib.so" +void (*extern_c_fib)(void*); + +void +fibĀ·Fib(int32 n, int32, int32) +{ + cgocall(extern_c_fib, &n); +} |