This is the mail archive of the gcc-help@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: mcmodel=large problem


Zeng Bin <ezengbin@gmail.com> writes:

> It reported the following error message during compilation:
>
> ../../../src/libgcc/config/libbid/bid_decimal_globals.c: In function
> â__dfp_set_roundâ:
> ../../../src/libgcc/config/libbid/bid_decimal_globals.c:34:1: error:
> unrecognizable insn:
> (call_insn/u 6 5 7 3 (parallel [
>             (set (reg:DI 0 ax)
>                 (call:DI (mem:QI (symbol_ref:DI ("__tls_get_addr")) [0 S1
> A8])
>                     (const_int 0 [0])))
>             (unspec:DI [
>                     (symbol_ref:DI ("__bid_IDEC_glbround") [flags 0x10]
> <var_decl 0x2b9b4508f000 __bid_IDEC_glbround>)
>                 ] UNSPEC_TLS_GD)
>         ]) ../../../src/libgcc/config/libbid/bid_decimal_globals.c:33 -1
>      (expr_list:REG_EH_REGION (const_int -2147483648 [0xffffffff80000000])
>         (nil))
>     (nil))
> ../../../src/libgcc/config/libbid/bid_decimal_globals.c:34:1: internal
> compiler error: in extract_insn, at recog.c:2109
> Please submit a full bug report,


This is a compiler bug.  Please submit a bug report, as described at
http://gcc.gnu.org/bugs.  Thanks.


> BTW, I am using Ubuntu with gcc-4.6.1. I am trying to compile gcc-4.6.2
> with -mcmodel=large.

Relatively few people use -mcmodel=large, because of the performance
penalty.  I suspect that it is not well-tested, hence this sort of
problem.

Another approach you can take to running a program at high addresses is
to use -fPIE and -pie, which lets you move the program around in
memory.

Ian


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