question on using gimple with global declarations

John Trimble
Thu Aug 10 10:16:00 GMT 2006

I've recently been tyring to use GCC to do source code level analyses
on the Linux kernel. I'm using the GEM framework to do this task
though I'm not paticularly attached to using it. To make life easier,
I've been gimplifying function trees and I would like to do the same
for the initialization trees of global declarations. In particular, I
get, using GEM, a declaration node and the tree representing its
initial value. When I try to gimplify this tree with
gimplify_expr(...) or force_gimple_operand(...) I get a segmentation
fault. One such example that causes this problem is a global
declaration like the following:

long ident_map[32] = {
	0,	1,	2,	3,	4,	5,	6,	7,
	8,	9,	10,	11,	12,	13,	14,	15,
	16,	17,	18,	19,	20,	21,	22,	23,
	24,	25,	26,	27,	28,	29,	30,	31

I would really like to not have to deal with things like constructors,
compound literals and that sort of thing. Is there a way to gimplify
the initialization expression of a global? and how might I go about
doing it? Thanks for your help and time.

John Trimble
Research Assistant
University of Arizona

More information about the Gcc-help mailing list