diff options
-rw-r--r-- | doc/asm.html | 8 | ||||
-rw-r--r-- | src/cmd/internal/obj/textflag.go | 4 | ||||
-rw-r--r-- | src/runtime/textflag.h | 4 |
3 files changed, 8 insertions, 8 deletions
diff --git a/doc/asm.html b/doc/asm.html index d578800086..51f85eb948 100644 --- a/doc/asm.html +++ b/doc/asm.html @@ -166,7 +166,7 @@ jumps and branches. </li> <li> -<code>SP</code>: Stack pointer: top of stack. +<code>SP</code>: Stack pointer: the highest address within the local stack frame. </li> </ul> @@ -216,7 +216,7 @@ If a Go prototype does not name its result, the expected assembly name is <code> The <code>SP</code> pseudo-register is a virtual stack pointer used to refer to frame-local variables and the arguments being prepared for function calls. -It points to the top of the local stack frame, so references should use negative offsets +It points to the highest address within the local stack frame, so references should use negative offsets in the range [−framesize, 0): <code>x-8(SP)</code>, <code>y-4(SP)</code>, and so on. </p> @@ -409,7 +409,7 @@ The linker will choose one of the duplicates to use. (For <code>TEXT</code> items.) Don't insert the preamble to check if the stack must be split. The frame for the routine, plus anything it calls, must fit in the -spare space at the top of the stack segment. +spare space remaining in the current stack segment. Used to protect routines such as the stack splitting code itself. </li> <li> @@ -460,7 +460,7 @@ Only valid on functions that declare a frame size of 0. <code>TOPFRAME</code> = 2048 <br> (For <code>TEXT</code> items.) -Function is the top of the call stack. Traceback should stop at this function. +Function is the outermost frame of the call stack. Traceback should stop at this function. </li> </ul> diff --git a/src/cmd/internal/obj/textflag.go b/src/cmd/internal/obj/textflag.go index 881e192203..5ae75027c2 100644 --- a/src/cmd/internal/obj/textflag.go +++ b/src/cmd/internal/obj/textflag.go @@ -49,8 +49,8 @@ const ( // Function can call reflect.Type.Method or reflect.Type.MethodByName. REFLECTMETHOD = 1024 - // Function is the top of the call stack. Call stack unwinders should stop - // at this function. + // Function is the outermost frame of the call stack. Call stack unwinders + // should stop at this function. TOPFRAME = 2048 // Function is an ABI wrapper. diff --git a/src/runtime/textflag.h b/src/runtime/textflag.h index e727208cd0..214075e360 100644 --- a/src/runtime/textflag.h +++ b/src/runtime/textflag.h @@ -32,8 +32,8 @@ #define NOFRAME 512 // Function can call reflect.Type.Method or reflect.Type.MethodByName. #define REFLECTMETHOD 1024 -// Function is the top of the call stack. Call stack unwinders should stop -// at this function. +// Function is the outermost frame of the call stack. Call stack unwinders +// should stop at this function. #define TOPFRAME 2048 // Function is an ABI wrapper. #define ABIWRAPPER 4096 |