• Cherry Zhang's avatar
    cmd/link: enable PIE on darwin/arm · d3660e8e
    Cherry Zhang authored
    We used to pass -no_pie to external linker on darwin/arm, which
    is incompatible with -fembed-bitcode. CL 201358 attempted to
    remove the -no_pie flag, but it resulted the darwin linker to
    complain about absolute addressing in TEXT segment.
    
    On darwin/arm, we already get away from absolute addressing in
    the TEXT section. The complained absolute addressing is in
    RODATA, which was embedded in the TEXT segment. This CL moves
    RODATA to the DATA segment, like what we already did on ARM64
    and on AMD64 in c-archive/c-shared buildmodes for the same reason.
    So there is no absolute addressing in the TEXT segment, which
    allows us to remove -no_pie flag.
    
    Fixes #35252.
    Updates #32963.
    
    Change-Id: Id6e3a594cb066d257d4f58fadb4a3ee4672529f7
    Reviewed-on: https://go-review.googlesource.com/c/go/+/205060Reviewed-by: default avatarElias Naur <mail@eliasnaur.com>
    d3660e8e
lib.go 71.3 KB