Skip to content

cmd/compile: bad line number attached to LEA instruction #22558

@aarzilli

Description

@aarzilli
go version devel +eaf6036 Fri Nov 3 01:55:16 2017 +0000 linux/amd64

This function gets compiled into this (with -N -l):

check.go:17	0x589cf0	MOVQ FS:0xfffffff8, CX
check.go:17	0x589cf9	LEAQ 0xfffffbb0(SP), AX
check.go:17	0x589d01	 CMPQ 0x10(CX), AX
check.go:17	0x589d05	JBE $0x58ab52
check.go:17	0x589d0b	 SUBQ $0x4d0, SP
check.go:17	0x589d12	 MOVQ BP, 0x4c8(SP)
check.go:17	0x589d1a	 LEAQ 0x4c8(SP), BP
check.go:17	0x589d22	 XORPS X0, X0
check.go:17	0x589d25	 LEAQ 0x348(SP), DI
check.go:17	0x589d2d	 MOVQ BP, -0x10(SP)
check.go:17	0x589d32	 LEAQ -0x10(SP), BP
check.go:17	0x589d37	 CALL $runtime.duffzero+247(SB)
check.go:17	0x589d3c	 MOVQ 0(BP), BP
check.go:17	0x589d40	 MOVQ $0x0, 0x4f0(SP)
check.go:18	0x589d4c	 MOVQ 0x4d8(SP), AX
check.go:18	0x589d54	 TESTB AL, 0(AX)
check.go:18	0x589d56	 MOVQ 0x40(AX), AX
check.go:67	0x589d5a	 LEAQ 0x8(SP), CX
check.go:18	0x589d5f	TESTQ AX, AX
(cut)

note the line number for 0x589d5a.

This also happens with 1.9.1, not a regression.

cc @heschik @dr2chase

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions