Test of hover for assembly files.

Hovering over an assembly symbol that has a Go declaration reports the
declaration's signature (with packages qualified by name, not path) and
its doc comment, rendered as Markdown. Labels and asm-only symbols have
no Go declaration and thus no hover.

-- go.mod --
module example.com
go 1.18

-- a/a.go --
package a

import "example.com/b"

// foo is the best function.
// It returns its input unchanged.
//
// # Details
//
// There is nothing more to say.
func foo(int) int

// x is a global variable.
var x int

// g returns a new T.
func g() *b.T

var _, _, _ = foo, x, g // pacify unused{func,var} analyzers

-- a/asm.s --
// portable assembly

TEXT ·foo(SB), $0-8                 //@hover("·foo", "·foo", foo)
	MOVQ ·x(SB), R0             //@hover("·x", "·x", x)
	CALL ·foo(SB)               //@hover("·foo", "·foo", foo)
	CALL ·g(SB)                 //@hover("·g", "·g", g)
	CALL example·com∕b·B(SB)    //@hover("B", "example·com∕b·B", bB)
loop:
	JMP loop
	RET

-- b/b.go --
package b

// B is a helper function.
func B() {}

// T is a helper type.
type T struct{}

-- @foo --
```go
func foo(int) int
```

foo is the best function. It returns its input unchanged.

### Details

There is nothing more to say.
-- @x --
```go
var x int
```

x is a global variable.
-- @g --
```go
func g() *b.T
```

g returns a new T.
-- @bB --
```go
func B()
```

B is a helper function.
