This is the mail archive of the gcc-patches@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: [tree-ssa] RFC - tree vectorizer


Dorit,

This looks great.

On Dec 25, 2003, at 3:11 PM, Dorit Naishlos wrote:
With respect to this last change in tree-flow.h - I added a new field
to stmt_ann in order to record information per stmt during vectorization. I
wanted to add a field similar to the "void *aux" in 'struct loop' for
example, but I guess that won't be possible as it is managed by the ggc?

I think, GGC allows to define void pointers and then use specific types during garbage collection. Look at GTY options documentation.

The other option is to use a stmt ID; since that's currently not available,
I guess I'd have to add an int field and assign IDs myself / use a hash
table. Recommendations?

IMO, attaching it with stmt_ann is a good idea.


/* General untility functions (CHECKME: where do they belong) */
static tree get_array_base (tree);

tree.c ?


/* CHECKME: better check if bb belongs to the loop? */

I use bitmaps in the loop versioning code I've.


  bitmap blocks_in_loop_map;
  blocks_in_loop_map = BITMAP_XMALLOC ();

  for (i = 0; i < loop->num_nodes; i++)
      bitmap_set_bit (blocks_in_loop_map, bb[i]->index);
  ...
  if (!bitmap_bit_p (blocks_in_loop_map, b->index))
   loop_entry_block = tree_split_edge (e);
  ...
  BITMAP_XFREE (blocks_in_loop_map);

Thanks,
--
Devang


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