They don't really make any sense on this side of the compiler/linker divide.
Some of the code touching these fields was the support for R_TLS when
thechar=='6' which turns out to be dead and so I just removed all of that.
Change-Id: I4e265613c4e7fcc30a965fffb7fd5f45017f06f3
Reviewed-on: https://go-review.googlesource.com/9107
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Reviewed-by: Ian Lance Taylor <iant@golang.org>
} else {
return -1
}
-
- case obj.R_TLS:
- if r.Siz == 4 {
- if ld.Buildmode == ld.BuildmodeCShared {
- ld.Thearch.Vput(ld.R_X86_64_GOTTPOFF | uint64(elfsym)<<32)
- } else {
- ld.Thearch.Vput(ld.R_X86_64_TPOFF32 | uint64(elfsym)<<32)
- }
- } else {
- return -1
- }
}
ld.Thearch.Vput(uint64(r.Xadd))
r.Siz = uint8(rdint(f))
r.Type = int32(rdint(f))
r.Add = rdint(f)
- r.Xadd = rdint(f)
+ rdint(f) // Xadd, ignored
r.Sym = rdsym(ctxt, f, pkg)
- r.Xsym = rdsym(ctxt, f, pkg)
+ rdsym(ctxt, f, pkg) // Xsym, ignored
}
}
if ctxt.Flag_shared != 0 {
rel.Add += ctxt.Pc - p.Pcrel.Pc - 8 - int64(rel.Siz)
}
- rel.Xadd = rel.Add
- rel.Xsym = rel.Sym
} else if ctxt.Flag_shared != 0 {
rel.Type = obj.R_PCREL
rel.Add += ctxt.Pc - p.Pcrel.Pc - 8
Siz uint8
Type int32
Add int64
- Xadd int64
Sym *LSym
- Xsym *LSym
}
// Reloc.type
wrint(b, int64(r.Siz))
wrint(b, int64(r.Type))
wrint(b, r.Add)
- wrint(b, r.Xadd)
+ wrint(b, 0) // Xadd, ignored
wrsym(b, r.Sym)
- wrsym(b, r.Xsym)
+ wrsym(b, nil) // Xsym, ignored
}
if s.Type == STEXT {
r.Off = -1 // caller must fill in
r.Sym = s
r.Add = a.Offset
- if s.Type == obj.STLSBSS {
- r.Xadd = r.Add - int64(r.Siz)
- r.Type = obj.R_TLS
- r.Xsym = s
- }
return 0
}