This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: LTO reader support for MEMORY_PARTITION_TAG
- From: Kenneth Zadeck <zadeck at naturalbridge dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: GCC <gcc at gcc dot gnu dot org>
- Date: Tue, 26 Jun 2007 17:00:44 -0400
- Subject: Re: LTO reader support for MEMORY_PARTITION_TAG
- References: <46813DD4.5070808@codesourcery.com>
Mark Mitchell wrote:
> Kenny --
>
> I tried to get the simplest C program containing a function:
>
> void f() {}
>
> to go through LTO today, but the LTO reader says:
>
> ./empty-function.o:0: internal compiler error: in lto_static_init_local,
> at lto-tree-flags.def:747
>
> Apparently, this is because the static set-up in lto_static_init_local
> doesn't handle MEMORY_PARTITION_TAG (and perhaps other new tree nodes
> added after the original LTO branch).
>
> For reference, this is how I compiled the file:
>
> ./xgcc -B./ -flto -funit-at-a-time -g -c empty-function.c
> ./lto1 empty-function.o
>
> Would you be able to take a look at that? I would like to be able to
> begin pushing forward on getting small functions to go through the compiler.
>
> Thanks,
>
>
2007-06-26 Kenneth Zadeck <zadeck@naturalbridge.com>
* lto-read (make_new_block): Initialize the stmt_list.
(lto_static_init_local): Add debugging for missing codes.
2007-06-26 Kenneth Zadeck <zadeck@naturalbridge.com>
* lto-tree-flags.def (tcc_gimple_stmt): New TREE_CLASS.
(GIMPLE_MODIFY_STMT, MEMORY_PARTITION_TAG, VEC_WIDEN_MULT_HI_EXPR,
VEC_WIDEN_MULT_LO_EXPR, VEC_UNPACK_HI_EXPR,
VEC_UNPACK_LO_EXPR, VEC_UNPACK_FLOAT_HI_EXPR,
VEC_UNPACK_FLOAT_LO_EXPR, VEC_PACK_TRUNC_EXPR,
VEC_PACK_SAT_EXPR, VEC_PACK_FIX_TRUNC_EXPR,
VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR,
VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): New
TREE_EXPRs.
There is no representation that this at all works, it now just does not
blow up on mark's trivial test case.
Further testing will happen tonight and tomorrow.
Kenny
Committed as revision 126044.