On 02/01/2015 03:42 AM, Mike Stump wrote: > On Jan 31, 2015, at 3:24 AM, Chen Gang S <gang.chen@xxxxxxxxxxxxx> wrote: >> ./insn-flags.h:114:0: warning: "HAVE_indirect_jump" redefined >> #define HAVE_indirect_jump (Pmode == DImode) > > So, the 386 port uses modeless define expands from the well known named patterns and they mix in <mode> to the name of the non-well known named patterns. > After try, modeless define needs multiple functions, and 'i386.c' needs to know about them. e.g. let 'ix86_gen_tls_global_dynamic_64' point to gen_tls_global_dynamic_64_di() or gen_tls_global_dynamic_64_si(). I guess, following this way, quite a few code in 'tilegx.c' will be modified for it, or it will cause issue (still look for the original no mode function name). e.g. ../../gcc-tile-new/gcc/config/tilegx/tilegx.c:2925:5: error: ‘CODE_FOR_insn_ld’ was not declared in this scope { CODE_FOR_insn_ld, NULL }, /* ld */ ^ If what I said above is really correct, for me, we have to try to find another ways to solve this issue (it is not worthy enough to modify quite a few code only for avoiding the suggesting warnings). Thanks. -- Open, share, and attitude like air, water, and life which God blessed.