Hello,
On Tue, May 17, 2011 at 04:40:10AM -0500, Jonathan Nieder wrote:
> Thanks again. I've taken the liberty of forwarding this upstream;
> I hope that's okay. Further discussion should probably happen
> there.
Tested proposed patch and it works for me:
--- gold/arm.cc.orig 2011-06-30 16:51:57.000000000 +0000
+++ gold/arm.cc 2011-06-30 16:54:49.000000000 +0000
@@ -3297,10 +3297,9 @@
Arm_address thumb_bit)
{
typedef typename elfcpp::Swap<32, big_endian>::Valtype Valtype;
- Valtype* wv = reinterpret_cast<Valtype*>(view);
- Valtype addend = elfcpp::Swap<32, big_endian>::readval(wv);
+ Valtype addend = elfcpp::Swap_unaligned<32, big_endian>::readval(view);
Valtype x = psymval->value(object, addend) | thumb_bit;
- elfcpp::Swap<32, big_endian>::writeval(wv, x);
+ elfcpp::Swap_unaligned<32, big_endian>::writeval(view, x);
return This::STATUS_OKAY;
}
Further details on the upstream bug report.
Cheers =)
--
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]