diff options
author | Michael Stapelberg <stapelberg@debian.org> | 2013-12-03 09:43:15 +0100 |
---|---|---|
committer | Michael Stapelberg <stapelberg@debian.org> | 2013-12-03 09:43:15 +0100 |
commit | 64d2a7c8945ba05af859901f5e248f1befdd8621 (patch) | |
tree | 013fcb7e9e3296ecdda876012252c36bd6bcb063 /src/pkg/runtime/funcdata.h | |
parent | b901efe83e212f0c34c769c079e41373da12d723 (diff) | |
download | golang-64d2a7c8945ba05af859901f5e248f1befdd8621.tar.gz |
Imported Upstream version 1.2upstream/1.2
Diffstat (limited to 'src/pkg/runtime/funcdata.h')
-rw-r--r-- | src/pkg/runtime/funcdata.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/src/pkg/runtime/funcdata.h b/src/pkg/runtime/funcdata.h new file mode 100644 index 000000000..166263ef9 --- /dev/null +++ b/src/pkg/runtime/funcdata.h @@ -0,0 +1,22 @@ +// Copyright 2013 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. + +// This file defines the IDs for PCDATA and FUNCDATA instructions +// in Go binaries. It is included by both C and assembly, so it must +// be written using #defines. It is included by the runtime package +// as well as the compilers. + +#define PCDATA_ArgSize 0 /* argument size at CALL instruction */ + +#define FUNCDATA_GCArgs 0 /* garbage collector blocks */ +#define FUNCDATA_GCLocals 1 + +// To be used in assembly. +#define ARGSIZE(n) PCDATA $PCDATA_ArgSize, $n + +// ArgsSizeUnknown is set in Func.argsize to mark all functions +// whose argument size is unknown (C vararg functions, and +// assembly code without an explicit specification). +// This value is generated by the compiler, assembler, or linker. +#define ArgsSizeUnknown 0x80000000 |