2010-02-04 Doug Kwan <dougkwan@google.com>
PR 11247 * arm-reloc-property.cc (cstdio): Include. * configure.ac (targetobjs): Remove duplicates. * configure: Regenerate. * resolve.cc (Symbol_table::resolve): Explicit instantiate both big and little endian version for a given address size.
This commit is contained in:
parent
34ed35c124
commit
6cfaf60bc2
5 changed files with 21 additions and 6 deletions
|
@ -1,3 +1,12 @@
|
|||
2010-02-04 Doug Kwan <dougkwan@google.com>
|
||||
|
||||
PR 11247
|
||||
* arm-reloc-property.cc (cstdio): Include.
|
||||
* configure.ac (targetobjs): Remove duplicates.
|
||||
* configure: Regenerate.
|
||||
* resolve.cc (Symbol_table::resolve): Explicit instantiate both
|
||||
big and little endian version for a given address size.
|
||||
|
||||
2010-02-03 Doug Kwan <dougkwan@google.com>
|
||||
|
||||
* arm-reloc-property.cc
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
|
||||
#include "gold.h"
|
||||
|
||||
#include <cstdio>
|
||||
#include <cstring>
|
||||
#include <stack>
|
||||
#include <string>
|
||||
|
|
3
gold/configure
vendored
3
gold/configure
vendored
|
@ -3410,6 +3410,9 @@ fi
|
|||
fi
|
||||
done
|
||||
|
||||
# Remove any duplicates.
|
||||
targetobjs=`echo $targetobjs | tr ' ' '\n' | sort | uniq | tr '\n' ' '`
|
||||
|
||||
if test -n "$targ_32_little"; then
|
||||
|
||||
$as_echo "#define HAVE_TARGET_32_LITTLE 1" >>confdefs.h
|
||||
|
|
|
@ -162,6 +162,9 @@ for targ in $target $canon_targets; do
|
|||
fi
|
||||
done
|
||||
|
||||
# Remove any duplicates.
|
||||
targetobjs=`echo $targetobjs | tr ' ' '\n' | sort | uniq | tr '\n' ' '`
|
||||
|
||||
if test -n "$targ_32_little"; then
|
||||
AC_DEFINE(HAVE_TARGET_32_LITTLE, 1,
|
||||
[Define to support 32-bit little-endian targets])
|
||||
|
|
|
@ -916,7 +916,10 @@ Symbol_table::override_with_special(Sized_symbol<size>* tosym,
|
|||
// script to restrict this to only the ones needed for implemented
|
||||
// targets.
|
||||
|
||||
#ifdef HAVE_TARGET_32_LITTLE
|
||||
// We have to instantiate both big and little endian versions because
|
||||
// these are used by other templates that depends on size only.
|
||||
|
||||
#if defined(HAVE_TARGET_32_LITTLE) || defined(HAVE_TARGET_32_BIG)
|
||||
template
|
||||
void
|
||||
Symbol_table::resolve<32, false>(
|
||||
|
@ -927,9 +930,7 @@ Symbol_table::resolve<32, false>(
|
|||
unsigned int orig_st_shndx,
|
||||
Object* object,
|
||||
const char* version);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_TARGET_32_BIG
|
||||
template
|
||||
void
|
||||
Symbol_table::resolve<32, true>(
|
||||
|
@ -942,7 +943,7 @@ Symbol_table::resolve<32, true>(
|
|||
const char* version);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_TARGET_64_LITTLE
|
||||
#if defined(HAVE_TARGET_64_LITTLE) || defined(HAVE_TARGET_64_BIG)
|
||||
template
|
||||
void
|
||||
Symbol_table::resolve<64, false>(
|
||||
|
@ -953,9 +954,7 @@ Symbol_table::resolve<64, false>(
|
|||
unsigned int orig_st_shndx,
|
||||
Object* object,
|
||||
const char* version);
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_TARGET_64_BIG
|
||||
template
|
||||
void
|
||||
Symbol_table::resolve<64, true>(
|
||||
|
|
Loading…
Reference in a new issue