aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gold/ChangeLog5
-rw-r--r--gold/output.cc24
2 files changed, 17 insertions, 12 deletions
diff --git a/gold/ChangeLog b/gold/ChangeLog
index 7270c4b..bcace3c 100644
--- a/gold/ChangeLog
+++ b/gold/ChangeLog
@@ -1,3 +1,8 @@
+2011-09-09 David S. Miller <davem@davemloft.net>
+
+ * output.cc (Output_fill_debug_info::do_write): Use Swap_unaligned.
+ (Output_fill_debug_line::do_write): Likewise.
+
2011-08-29 Cary Coutant <ccoutant@google.com>
* output.cc: (Output_fill_debug_info::do_minimum_hole_size): Add
diff --git a/gold/output.cc b/gold/output.cc
index 9bf6a42..29d8e3d 100644
--- a/gold/output.cc
+++ b/gold/output.cc
@@ -1961,15 +1961,15 @@ Output_fill_debug_info::do_write(Output_file* of, off_t off, size_t len) const
// address_size.
if (this->is_big_endian())
{
- elfcpp::Swap<32, true>::writeval(pov, len - 4);
- elfcpp::Swap<16, true>::writeval(pov + 4, this->version);
- elfcpp::Swap<32, true>::writeval(pov + 6, 0);
+ elfcpp::Swap_unaligned<32, true>::writeval(pov, len - 4);
+ elfcpp::Swap_unaligned<16, true>::writeval(pov + 4, this->version);
+ elfcpp::Swap_unaligned<32, true>::writeval(pov + 6, 0);
}
else
{
- elfcpp::Swap<32, false>::writeval(pov, len - 4);
- elfcpp::Swap<16, false>::writeval(pov + 4, this->version);
- elfcpp::Swap<32, false>::writeval(pov + 6, 0);
+ elfcpp::Swap_unaligned<32, false>::writeval(pov, len - 4);
+ elfcpp::Swap_unaligned<16, false>::writeval(pov + 4, this->version);
+ elfcpp::Swap_unaligned<32, false>::writeval(pov + 6, 0);
}
pov += 4 + 2 + 4;
*pov++ = 4;
@@ -2021,15 +2021,15 @@ Output_fill_debug_line::do_write(Output_file* of, off_t off, size_t len) const
// line number program is empty.
if (this->is_big_endian())
{
- elfcpp::Swap<32, true>::writeval(pov, len - 4);
- elfcpp::Swap<16, true>::writeval(pov + 4, this->version);
- elfcpp::Swap<32, true>::writeval(pov + 6, len - (4 + 2 + 4));
+ elfcpp::Swap_unaligned<32, true>::writeval(pov, len - 4);
+ elfcpp::Swap_unaligned<16, true>::writeval(pov + 4, this->version);
+ elfcpp::Swap_unaligned<32, true>::writeval(pov + 6, len - (4 + 2 + 4));
}
else
{
- elfcpp::Swap<32, false>::writeval(pov, len - 4);
- elfcpp::Swap<16, false>::writeval(pov + 4, this->version);
- elfcpp::Swap<32, false>::writeval(pov + 6, len - (4 + 2 + 4));
+ elfcpp::Swap_unaligned<32, false>::writeval(pov, len - 4);
+ elfcpp::Swap_unaligned<16, false>::writeval(pov + 4, this->version);
+ elfcpp::Swap_unaligned<32, false>::writeval(pov + 6, len - (4 + 2 + 4));
}
pov += 4 + 2 + 4;
*pov++ = 1; // minimum_instruction_length