* arm.cc (Target_arm::do_is_defined_by_abi): Make sym a const

pointer.
	(Stub_addend_reader::operator()): Declare Arm_relocate_functions
	as a class, not a struct.
	(Target_arm::scan_span_for_cortex_a8_erratum): Likewise.
	(Target_arm::apply_cortex_a8_workaround): Likewise.
	* gc.h: Declare Reloc_types as a struct, not a class.
	* object.h: Declare Symbols_data as a struct.
	* reloc.h: Declare Read_relocs_data as a struct.
	* target.h: Declare Relocate_info as a struct.
This commit is contained in:
Ian Lance Taylor 2012-04-26 00:07:21 +00:00
parent 109bbf34a1
commit 2c54b4f422
6 changed files with 26 additions and 11 deletions

View File

@ -1,3 +1,16 @@
2012-04-25 Ian Lance Taylor <iant@google.com>
* arm.cc (Target_arm::do_is_defined_by_abi): Make sym a const
pointer.
(Stub_addend_reader::operator()): Declare Arm_relocate_functions
as a class, not a struct.
(Target_arm::scan_span_for_cortex_a8_erratum): Likewise.
(Target_arm::apply_cortex_a8_workaround): Likewise.
* gc.h: Declare Reloc_types as a struct, not a class.
* object.h: Declare Symbols_data as a struct.
* reloc.h: Declare Read_relocs_data as a struct.
* target.h: Declare Relocate_info as a struct.
2012-04-24 David S. Miller <davem@davemloft.net>
* sparc.cc (Target_sparc::Relocate::relax_call): New function.

View File

@ -2314,7 +2314,7 @@ class Target_arm : public Sized_target<32, big_endian>
// Return whether SYM is defined by the ABI.
bool
do_is_defined_by_abi(Symbol* sym) const
do_is_defined_by_abi(const Symbol* sym) const
{ return strcmp(sym->name(), "__tls_get_addr") == 0; }
// Return whether there is a GOT section.
@ -6993,7 +6993,7 @@ Stub_addend_reader<elfcpp::SHT_REL, big_endian>::operator()(
const unsigned char* view,
const typename Reloc_types<elfcpp::SHT_REL, 32, big_endian>::Reloc&) const
{
typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
typedef class Arm_relocate_functions<big_endian> RelocFuncs;
switch (r_type)
{
@ -11709,7 +11709,7 @@ Target_arm<big_endian>::scan_span_for_cortex_a8_erratum(
// Check if we have an offending branch instruction.
uint16_t upper_insn = (insn >> 16) & 0xffffU;
uint16_t lower_insn = insn & 0xffffU;
typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
typedef class Arm_relocate_functions<big_endian> RelocFuncs;
if (cortex_a8_reloc != NULL
&& cortex_a8_reloc->reloc_stub() != NULL)
@ -11812,7 +11812,7 @@ Target_arm<big_endian>::apply_cortex_a8_workaround(
Valtype lower_insn = elfcpp::Swap<16, big_endian>::readval(wv + 1);
off_t branch_offset = stub_address - (insn_address + 4);
typedef struct Arm_relocate_functions<big_endian> RelocFuncs;
typedef class Arm_relocate_functions<big_endian> RelocFuncs;
switch (stub->stub_template()->type())
{
case arm_stub_a8_veneer_b_cond:

View File

@ -1,6 +1,6 @@
// gc.h -- garbage collection of unused sections
// Copyright 2009, 2010 Free Software Foundation, Inc.
// Copyright 2009, 2010, 2011, 2012 Free Software Foundation, Inc.
// Written by Sriraman Tallam <tmsriram@google.com>.
// This file is part of gold.
@ -40,7 +40,7 @@ template<int size, bool big_endian>
class Sized_relobj_file;
template<int sh_type, int size, bool big_endian>
class Reloc_types;
struct Reloc_types;
class Output_section;
class General_options;

View File

@ -1,6 +1,7 @@
// object.h -- support for an object file for linking in gold -*- C++ -*-
// Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
// Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc.
// Written by Ian Lance Taylor <iant@google.com>.
// This file is part of gold.
@ -47,7 +48,7 @@ class Pluginobj;
class Dynobj;
class Object_merge_map;
class Relocatable_relocs;
class Symbols_data;
struct Symbols_data;
template<typename Stringpool_char>
class Stringpool_template;

View File

@ -38,7 +38,7 @@ namespace gold
class General_options;
class Object;
class Relobj;
class Read_relocs_data;
struct Read_relocs_data;
class Symbol;
class Layout;
class Output_data;

View File

@ -1,6 +1,7 @@
// target.h -- target support for gold -*- C++ -*-
// Copyright 2006, 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
// Copyright 2006, 2007, 2008, 2009, 2010, 2011, 2012
// Free Software Foundation, Inc.
// Written by Ian Lance Taylor <iant@google.com>.
// This file is part of gold.
@ -49,7 +50,7 @@ template<int size, bool big_endian>
class Sized_relobj_file;
class Relocatable_relocs;
template<int size, bool big_endian>
class Relocate_info;
struct Relocate_info;
class Reloc_symbol_changes;
class Symbol;
template<int size>