Looking at the assembly code, I think that movw, movt should be rewritten. Are two instructions rewritten with one R_ARM_COPY? But R_ARM_MOVW_ABS_NC/R_ARM_MOVT_ABS processing is not in glibc <sysdeps/arm/dl-machine.h> and uclibc <ldso/ldso/arm/elfinterp.c>. Where is wrong?
In Ubuntu 16.10 (amd64)
> lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 16.10 Release: 16.10 Codename: yakkety > gcc --version gcc (Ubuntu 6.2.0-5ubuntu12) 6.2.0 20161005 Copyright (C) 2016 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
> ld --version GNU ld (GNU Binutils for Ubuntu) 2.27 Copyright (C) 2016 Free Software Foundation, Inc. This program is free software; you may redistribute it under the terms of the GNU General Public License version 3 or (at your option) a later version. This program has absolutely no warranty.