* powerpc.cc (Powerpc_relobj::Powerpc_relobj): Init has14_ and
authorAlan Modra <amodra@gmail.com>
Mon, 10 Dec 2012 11:30:57 +0000 (11:30 +0000)
committerAlan Modra <amodra@gmail.com>
Mon, 10 Dec 2012 11:30:57 +0000 (11:30 +0000)
stub_table_.
(Target_powerpc::Branch_info::make_stub): Don't omit addend.

gold/ChangeLog
gold/powerpc.cc

index 4ccde1692eedbdb472424557a9db4d72aa8ce4b2..6db642c1ea348e42350c69c50c57e8af169797de 100644 (file)
@@ -1,3 +1,9 @@
+2012-12-10  Alan Modra  <amodra@gmail.com>
+
+       * powerpc.cc (Powerpc_relobj::Powerpc_relobj): Init has14_ and
+       stub_table_.
+       (Target_powerpc::Branch_info::make_stub): Don't omit addend.
+
 2012-12-07  Roland McGrath  <mcgrathr@google.com>
 
        * testsuite/binary_unittest.cc (Sized_binary_test):
index 3d54577c6288fdfa9e5d4d7c971cb3b10848418d..896e8ab21ab91d384f218fe69370600ce2c7a50d 100644 (file)
@@ -71,7 +71,8 @@ public:
   Powerpc_relobj(const std::string& name, Input_file* input_file, off_t offset,
                 const typename elfcpp::Ehdr<size, big_endian>& ehdr)
     : Sized_relobj_file<size, big_endian>(name, input_file, offset, ehdr),
-      special_(0), opd_valid_(false), opd_ent_(), access_from_map_()
+      special_(0), opd_valid_(false),
+      opd_ent_(), access_from_map_(), has14_(), stub_table_()
   { }
 
   ~Powerpc_relobj()
@@ -2067,6 +2068,7 @@ Target_powerpc<size, big_endian>::Branch_info::make_stub(
            return;
          to = symval.value(this->object_, 0);
        }
+      to += this->addend_;
       if (stub_table == NULL)
        stub_table = this->object_->stub_table(this->shndx_);
       gold_assert(stub_table != NULL);