OLD | NEW |
1 // output.cc -- manage the output file for gold | 1 // output.cc -- manage the output file for gold |
2 | 2 |
3 // Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. | 3 // Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc. |
4 // Written by Ian Lance Taylor <iant@google.com>. | 4 // Written by Ian Lance Taylor <iant@google.com>. |
5 | 5 |
6 // This file is part of gold. | 6 // This file is part of gold. |
7 | 7 |
8 // This program is free software; you can redistribute it and/or modify | 8 // This program is free software; you can redistribute it and/or modify |
9 // it under the terms of the GNU General Public License as published by | 9 // it under the terms of the GNU General Public License as published by |
10 // the Free Software Foundation; either version 3 of the License, or | 10 // the Free Software Foundation; either version 3 of the License, or |
(...skipping 1705 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1716 const Sized_symbol<size>* s = | 1716 const Sized_symbol<size>* s = |
1717 static_cast<const Sized_symbol<size>*>(this->u_.sym); | 1717 static_cast<const Sized_symbol<size>*>(this->u_.sym); |
1718 val = s->value(); | 1718 val = s->value(); |
1719 } | 1719 } |
1720 break; | 1720 break; |
1721 | 1721 |
1722 case DYNAMIC_STRING: | 1722 case DYNAMIC_STRING: |
1723 val = pool->get_offset(this->u_.str); | 1723 val = pool->get_offset(this->u_.str); |
1724 break; | 1724 break; |
1725 | 1725 |
| 1726 case DYNAMIC_TARGET: |
| 1727 val = parameters->target().dynamic_tag_value(this->tag_); |
| 1728 break; |
| 1729 |
1726 default: | 1730 default: |
1727 val = this->u_.od->address() + this->offset_; | 1731 val = this->u_.od->address() + this->offset_; |
1728 break; | 1732 break; |
1729 } | 1733 } |
1730 | 1734 |
1731 elfcpp::Dyn_write<size, big_endian> dw(pov); | 1735 elfcpp::Dyn_write<size, big_endian> dw(pov); |
1732 dw.put_d_tag(this->tag_); | 1736 dw.put_d_tag(this->tag_); |
1733 dw.put_d_val(val); | 1737 dw.put_d_val(val); |
1734 } | 1738 } |
1735 | 1739 |
(...skipping 3676 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5412 template | 5416 template |
5413 class Output_data_got<64, false>; | 5417 class Output_data_got<64, false>; |
5414 #endif | 5418 #endif |
5415 | 5419 |
5416 #ifdef HAVE_TARGET_64_BIG | 5420 #ifdef HAVE_TARGET_64_BIG |
5417 template | 5421 template |
5418 class Output_data_got<64, true>; | 5422 class Output_data_got<64, true>; |
5419 #endif | 5423 #endif |
5420 | 5424 |
5421 } // End namespace gold. | 5425 } // End namespace gold. |
OLD | NEW |