...

Text file src/runtime/textflag.h

     1	// Copyright 2013 The Go Authors. All rights reserved.
     2	// Use of this source code is governed by a BSD-style
     3	// license that can be found in the LICENSE file.
     4	
     5	// This file defines flags attached to various functions
     6	// and data objects. The compilers, assemblers, and linker must
     7	// all agree on these values.
     8	//
     9	// Keep in sync with src/cmd/internal/obj/textflag.go.
    10	
    11	// Don't profile the marked routine. This flag is deprecated.
    12	#define NOPROF	1
    13	// It is ok for the linker to get multiple of these symbols. It will
    14	// pick one of the duplicates to use.
    15	#define DUPOK	2
    16	// Don't insert stack check preamble.
    17	#define NOSPLIT	4
    18	// Put this data in a read-only section.
    19	#define RODATA	8
    20	// This data contains no pointers.
    21	#define NOPTR	16
    22	// This is a wrapper function and should not count as disabling 'recover'.
    23	#define WRAPPER 32
    24	// This function uses its incoming context register.
    25	#define NEEDCTXT 64
    26	// Allocate a word of thread local storage and store the offset from the
    27	// thread local base to the thread local storage in this variable.
    28	#define TLSBSS	256
    29	// Do not insert instructions to allocate a stack frame for this function.
    30	// Only valid on functions that declare a frame size of 0.
    31	// TODO(mwhudson): only implemented for ppc64x at present.
    32	#define NOFRAME 512
    33	// Function can call reflect.Type.Method or reflect.Type.MethodByName.
    34	#define REFLECTMETHOD 1024
    35	// Function is the top of the call stack. Call stack unwinders should stop
    36	// at this function.
    37	#define TOPFRAME 2048

View as plain text