aboutsummaryrefslogtreecommitdiff
path: root/src/debug/elf
diff options
context:
space:
mode:
authorAustin Clements <austin@google.com>2014-10-22 15:51:54 -0400
committerAustin Clements <austin@google.com>2014-10-22 15:51:54 -0400
commitf0bd539c594ab4acfdaded45625a89a13d0bd575 (patch)
treeb9881e97ee8064251e5c94fbd544ee59b2d40abd /src/debug/elf
parent977fba763a5e45e5527e45619ed0712ca09d910d (diff)
parentaf3868f1879c7f8bef1a4ac43cfe1ab1304ad6a4 (diff)
downloadgo-f0bd539c594ab4acfdaded45625a89a13d0bd575.tar.xz
[dev.power64] all: merge default into dev.power64
This brings dev.power64 up-to-date with the current tip of default. go_bootstrap is still panicking with a bad defer when initializing the runtime (even on amd64). LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/152570049
Diffstat (limited to 'src/debug/elf')
-rw-r--r--src/debug/elf/file.go8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/debug/elf/file.go b/src/debug/elf/file.go
index 49060b7356..74d1db306c 100644
--- a/src/debug/elf/file.go
+++ b/src/debug/elf/file.go
@@ -567,6 +567,10 @@ func (f *File) applyRelocationsAMD64(dst []byte, rels []byte) error {
continue
}
+ // There are relocations, so this must be a normal
+ // object file, and we only look at section symbols,
+ // so we assume that the symbol value is 0.
+
switch t {
case R_X86_64_64:
if rela.Off+8 >= uint64(len(dst)) || rela.Addend < 0 {
@@ -649,6 +653,10 @@ func (f *File) applyRelocationsARM64(dst []byte, rels []byte) error {
continue
}
+ // There are relocations, so this must be a normal
+ // object file, and we only look at section symbols,
+ // so we assume that the symbol value is 0.
+
switch t {
case R_AARCH64_ABS64:
if rela.Off+8 >= uint64(len(dst)) || rela.Addend < 0 {