blob: 96982bedab82c502d3a6e846238bb2d0e1926094 [file] [log] [blame]
// Copyright 2022 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 "funcdata.h"
#include "textflag.h"
// Assembly function for runtime_test.TestStartLineAsm.
//
// Note that this file can't be built directly as part of runtime_test, as assembly
// files can't declare an alternative package. Building it into runtime is
// possible, but linkshared complicates things:
//
// 1. linkshared mode leaves the function around in the final output of
// non-test builds.
// 2. Due of (1), the linker can't resolve the callerStartLine relocation
// (as runtime_test isn't built for non-test builds).
//
// Thus it is simpler to just put this in its own package, imported only by
// runtime_test. We use ABIInternal as no ABI wrapper is generated for
// callerStartLine since it is in a different package.
TEXT ·AsmFunc<ABIInternal>(SB),NOSPLIT,$8-0
NO_LOCAL_POINTERS
MOVQ $0, AX // wantInlined
MOVQ ·CallerStartLine(SB), DX
CALL (DX)
RET