This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC 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: Problem with a cross-compiler based on gcc-trunk


Vincent R. wrote:

> vincent@vincent-pc:~/projects$ arm-mingw32ce-gcc -std=gnu99 -save-temps
> -I/home/vincent/local/wince/include -DNDEBUG -O3 -c cegcc-errno-bug.c 
> -DDLL_EXPORT -DPIC -o libeet_la-eet_lib.o
> cegcc-errno-bug.c: In function 'eet_close':
> cegcc-errno-bug.c:134: error: unrecognizable insn:
> (insn 6 5 7 3 cegcc-errno-bug.c:114 (set (reg/f:SI 138)
>         (symbol_ref:SI ("errno") [flags 0x4c0] <var_decl 0xb7db26e0
> errno>)) -1 (nil))
> cegcc-errno-bug.c:134: internal compiler error: in extract_insn, at
> recog.c:2048

> Of course I could report a bug but since original sources are patched the
> bug might be due to one of the modifications.
> And here is the testcase :

  You could probably have cut that down just to the definition of errno,
Eet_Error and eet_flush2.  Which actual definition of EAPI were you using?

> If I comment the errno variable inside the switch and replace it by 1 for
> instance, it compiles fine.
> Where should I start ?

  First thing would be to try and figure out why the insn isn't being
recognized.  This is rather odd unless your patch has affected the movsi
definition in the .md file.  Does the error go away if you make sure there is
no dllimport/export attribute?

    cheers,
      DaveK



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