summaryrefslogtreecommitdiff
path: root/libgo/runtime/runtime.h
diff options
context:
space:
mode:
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-16 22:58:53 +0000
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-16 22:58:53 +0000
commit1ecc61579adbbe6be91ba4847de3dd47615f2da9 (patch)
treec90d2bfba44756e26640c50ad1389375693ef832 /libgo/runtime/runtime.h
parent3bb12d97b7bf4bc70ce53e33a51085adf768f600 (diff)
downloadgcc-1ecc61579adbbe6be91ba4847de3dd47615f2da9.tar.gz
compiler, reflect, runtime: Use static chain for closures.
Change from using __go_set_closure to passing the closure value in the static chain field. Uses new backend support for setting the closure chain in a call from C via __builtin_call_with_static_chain. Uses new support in libffi for Go closures. The old architecture specific support for reflect.MakeFunc is removed, replaced by the libffi support. All work done by Richard Henderson. * go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument. (Gcc_backend::static_chain_variable): New method. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219776 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgo/runtime/runtime.h')
-rw-r--r--libgo/runtime/runtime.h4
1 files changed, 0 insertions, 4 deletions
diff --git a/libgo/runtime/runtime.h b/libgo/runtime/runtime.h
index 1f1358ae947..515ae58ff85 100644
--- a/libgo/runtime/runtime.h
+++ b/libgo/runtime/runtime.h
@@ -195,7 +195,6 @@ struct Location
struct G
{
- void* closure; // Closure value.
Defer* defer;
Panic* panic;
void* exception; // current exception being thrown
@@ -833,9 +832,6 @@ int32 getproccount(void);
#define PREFETCH(p) __builtin_prefetch(p)
-void __go_set_closure(void*);
-void* __go_get_closure(void);
-
bool runtime_gcwaiting(void);
void runtime_badsignal(int);
Defer* runtime_newdefer(void);