RE: Problem cross-compiling trunk for bfin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Bug 47779 has been added to the database

Thanks Ian.

Stu

-----Original Message-----
From: Ian Lance Taylor [mailto:iant@xxxxxxxxxx]
Sent: 16 February 2011 23:00
To: Henderson, Stuart
Cc: gcc-help@xxxxxxxxxxx
Subject: Re: Problem cross-compiling trunk for bfin

"Henderson, Stuart" <Stuart.Henderson@xxxxxxxxxx> writes:

> r160579 | rsandifo | 2010-06-10 21:23:43 +0100 (Thu, 10 Jun 2010) | 7 lines
> gcc/
>     * configure.ac (tm_include_list): Add insn-constants.h.
>     * configure: Regenerate.
>     * Makefile.in (GTM_H): Move insn-constants.h here from...
>     (TM_H): ...here.
>     * mkconfig.sh: Remove special handling for insn-constants.h.
>
> The change moves the inclusion of "insn-constants.h" from being conditional on:
> #if defined IN_GCC && !defined GENERATOR_FILE && !defined USED_FOR_TARGET
> to just:
> #if defined IN_GCC
>
> This causes insn-constants.h to be included here which defines various register macros that can then clash with the enum (of registers in the gregset_t array) in uClibc's sys/ucontext.h.
>
> Although I've only hit this with bfin, it seems like it could easily hit other architectures.  Not having a deep enough understanding of the gcc ecosystem nor why the change was made, I was hoping someone could explain the best way to resolve this?

I doubt there is a clean way to solve this.  Probably the simplest way
is to rename the conflicting constants in gcc/config/bfin/*.

Please open a bug report about this.  See http://gcc.gnu.org/bugs/ .
Thanks.

Ian



[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux