mirror of
https://github.com/golang/go.git
synced 2025-12-08 06:10:04 +00:00
cmd/link: remove unused flag -D (FlagDataAddr)
FlagDataAddr is a vestige from git commit 0cafb9e (2008;
no Gerrit CL number).
It was never used but unfortunately setting it would
cause a spurious warning:
warning: -D<value> is ignored because of -R0x1000
yet if -R was unset e.g. -R=0, the linker would crash
with a divide by zero runtime panic.
Fixes #28921
Change-Id: Ia910399bc269337a9a860f3a26cd48fae6e62724
Reviewed-on: https://go-review.googlesource.com/c/151021
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
This commit is contained in:
parent
aafa855fd3
commit
db2b6e1566
11 changed files with 4 additions and 126 deletions
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -84,9 +83,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x200000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x200000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x200000
|
*ld.FlagRound = 0x200000
|
||||||
}
|
}
|
||||||
|
|
@ -99,9 +95,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x1000000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x1000000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
|
|
||||||
case objabi.Hlinux, /* elf64 executable */
|
case objabi.Hlinux, /* elf64 executable */
|
||||||
objabi.Hfreebsd, /* freebsd */
|
objabi.Hfreebsd, /* freebsd */
|
||||||
|
|
@ -115,9 +108,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = (1 << 22) + int64(ld.HEADR)
|
*ld.FlagTextAddr = (1 << 22) + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -130,19 +120,12 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
||||||
case objabi.Hwindows: /* PE executable */
|
case objabi.Hwindows: /* PE executable */
|
||||||
// ld.HEADR, ld.FlagTextAddr, ld.FlagDataAddr and ld.FlagRound are set in ld.Peinit
|
// ld.HEADR, ld.FlagTextAddr, ld.FlagRound are set in ld.Peinit
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -81,9 +80,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4128
|
*ld.FlagTextAddr = 4128
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -99,9 +95,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
@ -113,9 +106,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
@ -125,19 +115,12 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
||||||
case objabi.Hwindows: /* PE executable */
|
case objabi.Hwindows: /* PE executable */
|
||||||
// ld.HEADR, ld.FlagTextAddr, ld.FlagDataAddr and ld.FlagRound are set in ld.Peinit
|
// ld.HEADR, ld.FlagTextAddr, ld.FlagRound are set in ld.Peinit
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -80,9 +79,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -93,9 +89,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
@ -105,9 +98,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -119,15 +109,8 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -88,7 +88,6 @@ var (
|
||||||
|
|
||||||
FlagRound = flag.Int("R", -1, "set address rounding `quantum`")
|
FlagRound = flag.Int("R", -1, "set address rounding `quantum`")
|
||||||
FlagTextAddr = flag.Int64("T", -1, "set text segment `address`")
|
FlagTextAddr = flag.Int64("T", -1, "set text segment `address`")
|
||||||
FlagDataAddr = flag.Int64("D", -1, "set data segment `address`")
|
|
||||||
flagEntrySymbol = flag.String("E", "", "set `entry` symbol name")
|
flagEntrySymbol = flag.String("E", "", "set `entry` symbol name")
|
||||||
|
|
||||||
cpuprofile = flag.String("cpuprofile", "", "write cpu profile to `file`")
|
cpuprofile = flag.String("cpuprofile", "", "write cpu profile to `file`")
|
||||||
|
|
@ -181,7 +180,7 @@ func Main(arch *sys.Arch, theArch Arch) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ctxt.Debugvlog != 0 {
|
if ctxt.Debugvlog != 0 {
|
||||||
ctxt.Logf("HEADER = -H%d -T0x%x -D0x%x -R0x%x\n", ctxt.HeadType, uint64(*FlagTextAddr), uint64(*FlagDataAddr), uint32(*FlagRound))
|
ctxt.Logf("HEADER = -H%d -T0x%x -R0x%x\n", ctxt.HeadType, uint64(*FlagTextAddr), uint32(*FlagRound))
|
||||||
}
|
}
|
||||||
|
|
||||||
switch ctxt.BuildMode {
|
switch ctxt.BuildMode {
|
||||||
|
|
|
||||||
|
|
@ -975,15 +975,9 @@ func Peinit(ctxt *Link) {
|
||||||
if *FlagTextAddr == -1 {
|
if *FlagTextAddr == -1 {
|
||||||
*FlagTextAddr = PEBASE + int64(PESECTHEADR)
|
*FlagTextAddr = PEBASE + int64(PESECTHEADR)
|
||||||
}
|
}
|
||||||
if *FlagDataAddr == -1 {
|
|
||||||
*FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *FlagRound == -1 {
|
if *FlagRound == -1 {
|
||||||
*FlagRound = int(PESECTALIGN)
|
*FlagRound = int(PESECTALIGN)
|
||||||
}
|
}
|
||||||
if *FlagDataAddr != 0 && *FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*FlagDataAddr), uint32(*FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func pewrite(ctxt *Link) {
|
func pewrite(ctxt *Link) {
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,6 @@ type XcoffAoutHdr64 struct {
|
||||||
Ox64flags uint16 // Additional Flags For 64-Bit Objects
|
Ox64flags uint16 // Additional Flags For 64-Bit Objects
|
||||||
Oresv3a int16 // Reserved
|
Oresv3a int16 // Reserved
|
||||||
Oresv3 [2]int32 // Reserved
|
Oresv3 [2]int32 // Reserved
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Section Header
|
// Section Header
|
||||||
|
|
@ -507,7 +506,6 @@ func Xcoffinit(ctxt *Link) {
|
||||||
Errorf(nil, "-T not available on AIX")
|
Errorf(nil, "-T not available on AIX")
|
||||||
}
|
}
|
||||||
*FlagTextAddr = XCOFFTEXTBASE + int64(HEADR)
|
*FlagTextAddr = XCOFFTEXTBASE + int64(HEADR)
|
||||||
*FlagDataAddr = 0
|
|
||||||
if *FlagRound != -1 {
|
if *FlagRound != -1 {
|
||||||
Errorf(nil, "-R not available on AIX")
|
Errorf(nil, "-R not available on AIX")
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -82,15 +81,8 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -81,9 +80,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 16*1024 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 16*1024 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 16 * 1024
|
*ld.FlagRound = 16 * 1024
|
||||||
}
|
}
|
||||||
|
|
@ -94,9 +90,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
@ -108,15 +101,8 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -85,9 +84,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4128
|
*ld.FlagTextAddr = 4128
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -98,9 +94,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
@ -112,19 +105,11 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
||||||
case objabi.Haix:
|
case objabi.Haix:
|
||||||
ld.Xcoffinit(ctxt)
|
ld.Xcoffinit(ctxt)
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -81,15 +80,8 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x10000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -34,7 +34,6 @@ import (
|
||||||
"cmd/internal/objabi"
|
"cmd/internal/objabi"
|
||||||
"cmd/internal/sys"
|
"cmd/internal/sys"
|
||||||
"cmd/link/internal/ld"
|
"cmd/link/internal/ld"
|
||||||
"fmt"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
func Init() (*sys.Arch, ld.Arch) {
|
func Init() (*sys.Arch, ld.Arch) {
|
||||||
|
|
@ -79,9 +78,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -91,9 +87,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 4096 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -108,9 +101,6 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x08048000 + int64(ld.HEADR)
|
*ld.FlagTextAddr = 0x08048000 + int64(ld.HEADR)
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 4096
|
*ld.FlagRound = 4096
|
||||||
}
|
}
|
||||||
|
|
@ -122,19 +112,12 @@ func archinit(ctxt *ld.Link) {
|
||||||
if *ld.FlagTextAddr == -1 {
|
if *ld.FlagTextAddr == -1 {
|
||||||
*ld.FlagTextAddr = 0x20000
|
*ld.FlagTextAddr = 0x20000
|
||||||
}
|
}
|
||||||
if *ld.FlagDataAddr == -1 {
|
|
||||||
*ld.FlagDataAddr = 0
|
|
||||||
}
|
|
||||||
if *ld.FlagRound == -1 {
|
if *ld.FlagRound == -1 {
|
||||||
*ld.FlagRound = 0x10000
|
*ld.FlagRound = 0x10000
|
||||||
}
|
}
|
||||||
|
|
||||||
case objabi.Hwindows: /* PE executable */
|
case objabi.Hwindows: /* PE executable */
|
||||||
// ld.HEADR, ld.FlagTextAddr, ld.FlagDataAddr and ld.FlagRound are set in ld.Peinit
|
// ld.HEADR, ld.FlagTextAddr, ld.FlagRound are set in ld.Peinit
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
if *ld.FlagDataAddr != 0 && *ld.FlagRound != 0 {
|
|
||||||
fmt.Printf("warning: -D0x%x is ignored because of -R0x%x\n", uint64(*ld.FlagDataAddr), uint32(*ld.FlagRound))
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue