On Fri, Nov 14, 2014 at 12:07 PM, Vladimir Makarov <vmaka...@redhat.com> wrote:
>  The LRA rematerialization patch I've submitted about day ago broke H.J.'s
> 32-bit bootstrap.  So I switched off the rematerialization right away.  The
> set for bootstrapping used by H.J. was very useful.  I've fixed several
> existing and potential bugs.
>
> Here the patch fixing the bugs and switching on LRA remat back.  The patch
> was bootstrapped on x86-64 and i686 (using H.J.'s options).
>
> Committed as rev. 217588.
>
> 2014-11-14  Vladimir Makarov  <vmaka...@redhat.com>
>
>         * lra-int.h (lra_create_live_ranges): Add parameter.
>         * lra-lives.c (temp_bitmap): Move higher.
>         (initiate_live_solver): Move temp_bitmap initialization into
>         lra_live_ranges_init.
>         (finish_live_solver): Move temp_bitmap clearing into
>         live_ranges_finish.
>         (process_bb_lives): Add parameter.  Use it to control live info
>         update and dead insn elimination.  Pass it to mark_regno_live and
>         mark_regno_dead.
>         (lra_create_live_ranges): Add parameter.  Pass it to
>         process_bb_lives.
>         (lra_live_ranges_init, lra_live_ranges_finish): See changes in
>         initiate_live_solver and finish_live_solver.
>         * lra-remat.c (do_remat): Process insn non-operand hard regs too.
>         Use temp_bitmap to update avail_cands.
>         * lra.c (lra): Pass new parameter to lra_create_live_ranges.  Move
>         check with lra_need_for_spill_p after live range pass.  Switch on
>         rematerialization pass.

Unfortunately, it failed to bootstrap ia32 GCC:

https://gcc.gnu.org/ml/gcc-regression/2014-11/msg00392.html

You can bootstrap ia32 GCC on Linux/x86-64:

1. Install ia32 binutils under /foo/bar.
2. Set PATH=/foo/bar:$PATH
3. Install 32-bit libraries used by GCC, glibc, mpfr, gmp, libmpc. ...
4. Configure GCC with

CC="gcc -m32" CXX="g++ -m32" ../src-trunk/configure \
--with-arch=core2 --with-cpu=slm --prefix=/usr/5.0.0
--enable-clocale=gnu  --enable-shared --with-demangler-in-ld
i686-linux --with-fpmath=sse --enable-languages=c,c++


-- 
H.J.

Reply via email to