This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [GOLD] TILE-Gx gold support


On Tue, Sep 11, 2012 at 7:14 AM, Jiong Wang <jiwang@tilera.com> wrote:
> Hi Maintainer:
>
> On behalf of Tilera Corporation, I'd like to contribute a gold port to our
> TILE-Gx architecture.
>
> port features
> ===
> 1. support 32-bit/64-bit/little-endian/big-endian
> 2. full support for pic/non-pic shared library
> 3. full support for tls/ifunc
>
> port test
> ===
> we have tested TILE-Gx gold by:
> 1. gold testsuites
> 2. bootstrap
> 3. build & run glibc, both libc.so & ld.so
> 4. build & run various other programs, like busybox, bison, flex, zlib etc.


Great, thanks!  This looks very good.  Just a few comments.

Needs ChangeLog entries.

> +struct tile_reloc_howto

I don't see any reason to define this in elfcpp/tilegx.h.  It's not
used there.  I'd rather see it moved to gold/tliegx.cc.  Also the gold
style is for all type names to start with a capital letter, so this
should be Tile_reloc_howto or perhaps simply Tile_howto.

The copyright line for tilegx.cc should just say 2012.

I think there is no need for tilegx.cc to #include "freebsd.h".

I don't see why Output_data_plt_tilegx is an abstract class, given
that it has only one child class.  In x86_64.cc Output_data_plt_x86_64
is an abstract class because it supports two different kinds of PLT:
the usual one, and one for NaCl
(https://developers.google.com/native-client/).  There is no need for
that for TILE-Gx.  Just use an ordinary class without a child class,
as the non-x86_64 targets do.

> +#define TILEGX_IMM16_MASK 0xFFFF
> +#define TILEGX_X0_IMM16_BITOFF 12
> +#define TILEGX_X1_IMM16_BITOFF 43

Use const ints here.

Ian


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]